Отличие алгоритмов DEFLATE и LZ77 при сжатии ZIP-файлов заключается в их принципах работы:
- DEFLATE использует сочетание сжатия LZ77 и кодирования Хаффмана. habr.com www.sobyte.net Он находит дублированные строки во входных данных и при втором появлении строки заменяет её указателем на предыдущую строку в виде пары (расстояние, длина). oaji.net
- LZ77 находит повторяющиеся подстроки и заменяет их обратными ссылками (относительными смещениями расстояния). oaji.net Он может использовать ссылку на дублированную строку, встречающуюся в том же или предыдущих блоках, на расстояние до 32К входных байт назад. oaji.net
Таким образом, основное отличие в том, что DEFLATE допускает обратные ссылки в рамках предыдущих 32 768 символов, а LZ77 всегда следует за совпадением с литералом, тогда как DEFLATE может следовать за совпадением с другим совпадением или литералом. stackoverflow.com