除了Huffman\LZMA之外还有那些压缩算法?

除了Huffman和LZMA外还有啥压缩算法呐?

阅读 2.4k
1 个回答

你提这俩都是无损压缩算法。

如果局限于此的话,LZMA 的前辈有 LZ77LZ78,以及后来的变体 LZXLZWLZXXLZWLLZSSLZJLZO 等等,其开头两个字母 LZ 得名于两个发明者姓氏首字母。

二者合体还有一个 DEFLATE

更古早一些的有 Shannon-Fano coding(香农-范诺编码),由信息论之父香农发明,不过因为效率低所以没流行起来。

新一点儿的有 PPM,不是音频的那个 PPM 格式,而是 Predicition with partial string matching,RAR 用的就是它。

再就还有 BWTBurrows-Wheeler Transform)算法,其最著名的开源实现就是 bzip2,广泛存在于类 Unix 系统中。

这都是比较流行的了,都有一些流行的归档程序(比如 ARC、RAR、ZIP、7z)在使用。

更新的一些的就是如今这些互联网巨头们发明的了,比如谷歌的 ZopfliBrotli;微软的 Project Zipline;Facebook 的 zstd;苹果的 LZFSE 等等等等。

P.S. 除了香农-范诺编码这个鼻祖外,上面提到的这些算法绝大部分要么参考了霍夫曼编码的理论,要么本身就依赖于霍夫曼编码,所以无论怎么着都离不开 Huffman

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题