84
правки
Изменения
м
→Примечание
'''*''' Итак, кодировщик заносит первую «а» в строку, ищет и находит "а" в словаре. Добавляет в строку следующую "а", находит, что "аа" нет в словаре. Тогда он добавляет запись <5>: "аа" в словарь и выводит метку <0> ("а") в выходной поток. '''*'''Далее строка инициализируется второй «а», то есть принимает вид "a?" вводится третья «а», строка вновь равна "аа", которая теперь имеется в словаре. '''*'''Если появляется четвертая «а», то строка "aa?" равна "ааа", которой нет в словаре. Словарь пополняется этой строкой, а на выход идет метка <5> ("aa"). '''*'''После этого строка инициализируется третьей «а», и т.д. и т.п. Дальнейший процесс вполне ясен. <br>
В результате на выходе получаем последовательность 0, 5, 6 …, которая короче прямого кодирования стандартным методом LZW.