Я делаю упражнения для курса о передаче информации.Нам нужно, чтобы Хаффман кодировал в двоичный код алфавит.
Исходный алфавит имеет четыре символа с вероятностями:
- P (A) = 0,4
- P (B) = 0,3
- P (C) = 0,2
- P (D) = 0,1
Так что для Хаффмана я беру два символа с наименьшей вероятностью, чтоC и D в этом примере.Я строю поддерево с двумя листьями (C & D).Следующий символ в списке, B, имеет шанс 0,3.
Теперь я могу сделать две вещи.Либо создайте второе поддерево с A & B, поскольку вероятность B совпадает со значением CD поддерева.Второй вариант - поместить B вместе с поддеревом CD и создать большее дерево со значением 0,6.
На рисунке ниже вы видите два варианта, которые я получил.Первое дерево создает два поддерева и соединяет их вместе.Во втором дереве мы просто вставляем B в дерево
Теперь у меня вопрос: какой метод выбрать?Создать новое поддерево для равной вероятности?Или положить равные вероятности в дерево?