С последовательностями ДНК у вас есть 4 возможных состояния, а именно:
- Гуанин (G, 00 )
- Цитозин (C, 01 )
- Аденин (A, 10 )
- Тимин (T, 11 )
Вы можете использоватьдва бита для хранения этих четырех возможных состояний со значениями в скобках.С помощью этого простого метода вы сможете хранить четыре различных значения в одном байте.
Обновление
Как уже упоминалось @kol, вы можете использовать практически любой алгоритм сжатия для дальнейшегосжать данные.В настоящее время .NET поставляется с двумя методами сжатия ( Deflate и GZip ), и многое другое можно найти в SharpZipLib библиотеке с открытым исходным кодом