如何压缩由DNA序列组成的字母表

Sar*_* S. 3 c# compression lossless-compression huffman-code

我想用压缩技术而不是Huffman和Adaptive Huffman算法来压缩DNA序列,我使用c#作为编程语言.任何人都可以带我到算法.注意:我想要无损压缩

yas*_*891 6

使用DNA序列,您有4种可能的状态,即

  • 鸟嘌呤(G,00)
  • 胞嘧啶(C,01)
  • 腺嘌呤(A,10)
  • 胸腺嘧啶(T,11)

您可以使用两位来存储这四种可能的状态,并使用括号中的值.使用这种简单的方法,您将能够在一个字节中存储四个不同的值.


更新
为@kol提到您可以使用几乎任何压缩算法来进一步缩小数据.目前.NET附带两种压缩方法(Deflate和GZip),更多可以在SharpZipLib开源库中找到

  • +1在此编码之后,可以通过无损压缩算法压缩生成的字节数组.查看System.IO.Compression:http://msdn.microsoft.com/en-us/library/3z72378a.aspx (2认同)