LZ77的最小源长度(以字节为单位)是多少?任何人都可以建议一个小而快速的实时压缩技术(最好使用c源)。我需要它来存储压缩文本和快速检索,以便在我的搜索引擎中生成摘录。
感谢所有的响应,即时通讯使用D语言进行此项目,因此将LZO移植到D代码有点困难。所以我要使用LZ77或Predictor。再次感谢:)
答案 0 :(得分:6)
我很久以前需要一种简单,快速的压缩算法,并找到了Predictor。
虽然它在压缩比方面可能不是最好的,但Predictor肯定是快速(非常快),易于实现,并且具有良好的最坏情况性能。您也不需要许可证来实现它,这很好。
您可以在Internet RFC 1978: PPP Predictor Compression Protocol中找到预测变量的和 C源代码。
答案 1 :(得分:3)
lzo compressor以其小巧和高速而着称,适合实时使用。由于内存读取次数减少,在现代CPU上使用几乎为零内存的解压缩非常快,甚至可以超过内存到内存的复制。 lzop是一个开源实现;可以使用其他几种语言的版本。
答案 2 :(得分:1)
如果您正在寻找更为人所知的东西,那么就可以获得一般压缩方面的最佳压缩机。 LZMA,7-zip编码器。 http://www.7-zip.org/sdk.html
答案 3 :(得分:1)
还有LZJB: https://hg.java.net/hg/solaris~on-src/file/tip/usr/src/uts/common/os/compress.c
它很简单,基于LZRW1,用作ZFS的基本压缩算法。