homechevron_rightУчебаchevron_rightИнформатика

Код Хаффмана для последовательности символов

Построение кодов Хаффмана для последовательности символов.

В принципе уже есть калькулятор Код Хаффмана, который рассчитывает коды Хаффмана для заданной вероятности символов, однако, как показала практика, студентам задания формируют в виде

Дана строка:beadbdddbaddaecbde. Определить коды встречающихся букв (код Хаффмана). Закодировать исходную строку построенным кодом.

В принципе, всё, что нужно для использования калькулятора по ссылке выше, это по строке составить таблицу встречаемости символов, и внести эту таблицу в калькулятор. Ну то есть, если взять процитированный пример, надо посчитать банально, сколько раз встречается символ b, символ e, символ a, символ d и символ c. Однако мне не жалко, я могу и код написать, который это сделает за студента. Ну в самом деле, вдруг человек ошибется, не так посчитает, или там пропустит пару букв.

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

Если нужна теория, см. статью Код Хаффмана.

PLANETCALC, Код Хаффмана для последовательности символов

Код Хаффмана для последовательности символов

Закодированная последовательность символов
 

Creative Commons Attribution/Share-Alike License 3.0 (Unported) PLANETCALC, Код Хаффмана для последовательности символов

Комментарии