4 ms·
Could anyone explain why LZ77 is preferred by implementors versus LZ78? It seems important for compressibility to prepare the data for maximum self-similarity,
by efficientsticks 5y ago
Could anyone explain why LZ77 is preferred by implementors versus LZ78?
It seems important for compressibility to prepare the data for maximum self-similarity, in addition to the LZ algorithms (as evidenced by the sort in this article). Could someone point towards a good modern summary of the approaches or heuristics?
- commandlinefan 5y agoI was going to answer "patents" because that's what I had read in the past (that LZ '78 was encumbered by patents while LZ '77 was not), but this wikipedia talk page: https://en.wikipedia.org/wiki/Talk:LZ77_and_LZ78#preference_of_LZ77_versus_LZ78_algorithms https://en.wikipedia.org/wiki/Talk:LZ77_and_LZ78#preference_... suggests that it's not just patent encumbrances.
- pornel 5y agoLZW just doesn't compress that well. In LZW you only can use a dictionary built gradually from length-limited scraps of the previous data, but in LZ77 you can directly reference any of the previous data of any length (within implementation limits).