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

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

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

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

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

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

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

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

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

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

Закодированная последовательность символов
 
Файл очень большой, при загрузке и создании может наблюдаться торможение браузера.

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

Комментарии