Указание:
Постройте дерево кодирования.
Решение:
Построим дерево кодирования.
Нужно закодировать ещё четыре буквы (В, Д, Е, Н), а в дереве есть три свободных узла. Каждое продолжение дерева из свободного узла создаёт два узла вместо одного, то есть количество узлов увеличивается на . Значит, нужно продолжить дерево в одном месте. С точки зрения длины кодов это можно сделать двумя способами: - из узла (длина кода ) получить два узла с длиной кода ;
- из узла или (длина кода ) получить два узла с длиной кода .
В первом случае мы получим новые коды длиной , , , , во втором – , , , . Подсчитаем количество знаков для кодирования слова ВВЕДЕНИЕ в каждом их этих случаев. В первом случае длина всех добавленных кодов (буквы В, Д, Е, Н) одинакова – бита. Длина кода буквы И задана – тоже бита. Всего получается бита. Во втором случае длина добавленных кодов разная. Очевидно, что для получения наименьшей длины самым коротким должен быть код буквы Е (она встречается чаще всех), следующим – код буквы В. Тогда длина кода для Е – бита, для В – , для Д и Н – по . Всего потребуется бита.