Как сжать алфавит, состоящий из последовательности ДНК - PullRequest
3 голосов
/ 19 декабря 2011

Я хочу сжать последовательность ДНК с помощью техники сжатия, а не алгоритма Хаффмана и адаптивного Хаффмана, я использую c # в качестве языка программирования.может кто-нибудь привести меня к алгоритму.Примечание: я хочу сжатие без потерь

1 Ответ

6 голосов
/ 19 декабря 2011

С последовательностями ДНК у вас есть 4 возможных состояния, а именно:

  • Гуанин (G, 00 )
  • Цитозин (C, 01 )
  • Аденин (A, 10 )
  • Тимин (T, 11 )

Вы можете использоватьдва бита для хранения этих четырех возможных состояний со значениями в скобках.С помощью этого простого метода вы сможете хранить четыре различных значения в одном байте.


Обновление
Как уже упоминалось @kol, вы можете использовать практически любой алгоритм сжатия для дальнейшегосжать данные.В настоящее время .NET поставляется с двумя методами сжатия ( Deflate и GZip ), и многое другое можно найти в SharpZipLib библиотеке с открытым исходным кодом

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...