Методика гарантирует построение кода с наименьшим для данного распределения вероятностей средним числом разрядов на букву. Для двоичного кода методика сводится к следующему. Буквы алфавита сообщений выписываются в основной столбец в порядке убывания вероятностей. Две последние буквы объединяются в одну вспомогательную букву, которой приписывается суммарная вероятность. Вероятности букв, не участвовавших в объединении, и полученная суммарная вероятность снова располагаются в порядке убывания вероятностей в дополнительном столбце, а две последние объединяются. Процесс продолжается до тех пор, пока не получим единственную вспомогательную букву с вероятностью, равной 1(таблица2.3)
Таблица 2.3
Буквы
Вероятности
Вспомогательные столбцы
z1
0,22
0,22
0,22
0,26
0,32
0,42
0,58
z2
0,20
0,20
0,20
0,22
0,26
0,32
0,42
z3
0,16
0,16
0,16
0,20
0,22
0,26
z4
0,16
0,16
0,16
0,16
0,20
z5
0,1
0,1
0,16
0,16
z6
0,1
0,1
0,1
z7
0,04
0,06
z8
0,02
Для составления кодовой комбинации, соответствующей данному сообщению, необходимо проследить путь перехода сообщений по строкам и столбцам таблицы. Для наглядности строится кодовое дерево. Из точки, соответствующей вероятности 1, направляются две ветви, причем ветви с большей вероятностью присваивается символ 1, а с меньшей – 0. Такое последовательное ветвление продолжается до тех пор, пока не дойдет очередь до каждой буквы (рисунок 2.3 ).
Рисунок 2.3 – Кодовое дерево
Теперь, двигаясь по кодовому дереву сверху вниз, можно записать для каждой буквы соответствующую ей кодовую комбинацию: