время сжатия текста создает специальный словарь повторяющихся цепочек, в словаре каждой цепочке соответствует короткий код;
• для цепочки первых байтов непрочитанной части ищется наиболее длинное совпадение в словаре. Код совпадения записывается в выходной массив, туда же заносится первый несовпавший символ, и текущая позиция перемещается вперед на длину совпадения + 1;
• в словарь добавляется новое слово: «совпадение» + «несовпавший символ», и процесс повторяется до тех пор, пока не будет сжат весь входной массив.
Алгоритм Лемпела-Зива - Яндекс.Видео (yandex.ru)