Адаптивный алгоритм сжатия Хаффмана

Алгоритм меняет дерево сжатия таким образом, чтобы наиболее частые последовательности кодировались наименьшим количесвом символов

пример:
aa bbb cccc ddddd eeeeee fffffffgggggggg

исходное сообщение вероятность код
a 2/40 1001
b 3/40 1000
c 4/40 011
d 5/40 010
e 6/40 111
f 7/40 110
g 8/40 00
<пробел> 5/40 101

Алгоритмы FGK

В основе - свойство наследования:
Бинарное кодовое дерево имеет свойство наследования, если каждый узел кроме корневого имеет наследников и если узлы могут быть перечислены в порядке неувеличивающихся весов для каждого узла со стороны наследников
Бинарный префиксный ход - код Хаффмана тогда и только тогда, когда кодовое дерево имеет св-во наследования
Преимущества:

Алгоритм перестроения кодового дерева в процессе передачи исходных сообщений

Начало - корневой узел (0) - узел, в котором заключены оставшиеся (nk)(n - k) сообщения