什么是最简单但有效的压缩算法?
Deflate,lzma等不是有效选项。我需要一些编译非常小的东西,比如:RLE,LZX,Huffman等。
注意:数据是95%ASCII文本
编辑:目前数据约为20kb,但我预计它会增长到1mb
EDIT2:
其他有趣的选择
smaz https://github.com/antirez/smaz
FastLZ http://fastlz.org/
答案 0 :(得分:6)
听起来LZO旨在满足您的要求:
- 减压很简单,非常快。
- 无需解压缩内存。
- 压缩非常快。
答案 1 :(得分:2)
答案 2 :(得分:2)
This benchmark有很多比较。检查它,因为它还显示了压缩过程中使用的算法。
答案 3 :(得分:2)
基于BWT的东西可能对这种情况有好处。
http://en.wikipedia.org/wiki/Burrows%E2%80%93Wheeler_transform
它比LZ更好地压缩文本,并且易于从头开始实现,
并且有很好的图书馆
http://libbsc.com
http://encode.ru/threads/104-libBWT?p=22903&viewfull=1#post22903
http://code.google.com/p/libdivsufsort/
或者,或者 ppmd 用于文本压缩
rar / winzip / 7-zip等,但更复杂
http://www.compression.ru/ds/ppmdj1.rar
http://www.compression.ru/ds/ppmsj.rar(更快/更少的内存使用)
http://www.ctxmodel.net/files/PPMd/ppmd_Jr1_sh8.rar(替代港口)
答案 4 :(得分:1)
大多数字典方案都会做得很好。任何LZ。我们在嵌入式系统上使用LZ77 varient来处理我们的许多简单压缩内容,并且它几乎没有内存开销,效果很好。什么样的系统正在压缩和什么是解压缩?这将决定你可以逃脱的压缩机类型。