lzss和zlib

1. 微软提供的compress.exe和expand.exe都是用的lzss算法,甚至源代码都是用的http://my.execpc.com/~geezer/code/lzss.c(注:MS将源代码中的滑动窗口数值改动了),难怪ms只提供了解压缩的windows API(LZCopy or SetupAPI...),却没有提供压缩的API,只提供了compress.exe,而且解压的API还只支持两种压缩算法(LZ+MSZIP),她老人家的风格真是。。。不过懒人到处都是,相当一部分公司的软件产品都是用的此算法,甚至直接用ms的compress.exe压缩(我之所以认出来,是因为ms文件头很特别),比如某些游戏的图片压缩。

2. zlib很好很强大。虽然和lzss都源于LZ77,不过从结果来看,zlib的压缩比例要好,因此占据了大半江山。好多叫得上名字的产品都用的它,尤其开源领域,如linux kernel。之所以lzss还有市场,因为它压缩速度稍快。

 

你可能感兴趣的:(游戏,c,算法,linux,windows)