Закодировать по методу Хаффмена буквы алфавита, имеющие
следующие вероятности: E={0.6;0.4;0.2;0.2;0.6}. Подсчитать среднюю
длину кодового слова.

17 Янв 2022 в 07:52
81 +1
0
Ответы
1

Для начала построим дерево Хаффмена для данного набора вероятностей:

1) Объединяем два символа с наименьшими вероятностями:

Объединяем символы с вероятностями 0.2 и 0.2Получаем новый символ с вероятностью 0.4

2) Объединяем символ с вероятностью 0.4 и следующий символ с вероятностью 0.4:

Получаем новый символ с вероятностью 0.8

3) Объединяем символы с вероятностями 0.6 и 0.6:

Получаем новый символ с вероятностью 1.2

Получаем следующее дерево Хаффмена:
_1.2____ / \
_0.8___ T
/ \
0.4 I
/ \
E A

Далее строим кодовые слова для каждой буквы:

E: 0A: 10I: 11T: 1

Средняя длина кодового слова:
(0.6 1 + 0.2 2 + 0.2 2 + 0.6 1) = 0.6 + 0.4 + 0.4 + 0.6 = 1.8

Средняя длина кодового слова для данного набора вероятностей равна 1.8.

16 Апр 2024 в 19:47
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир