Алгоритм построения кодового дерева кода Хаффмена
Input: Объем алфавита М, вероятности букв Output: Двоичное дерево кода Хаффмена Инициализация: Количество необработанных узлов while в списке необработанных узлов найти два узла с наименьшими вероятностями. Исключить эти узлы из списка необработанных. Ввести новый узел, приписать ему суммарную вероятность двух исключенных узлов. Новый узел связать ребрами с исключенными узлами.
End Алгоритм построения кода Шеннона–Фано Input:Объем алфавита Output: Список кодовых слов Шеннона Сортировка: for
End Кумулятивные вероятности:
for
End Кодовые слова: for
End
Алгоритм построения кода Гилберта–Мура Input: Объем алфавита Output: Список кодовых слов кода Гилберта – Мура Вспомогательные вероятности:
for
End Кодовые слова: for
End Алгоритм арифметического кодирования Input: Объем алфавита вероятности букв длина последовательности последовательность на выходе источника Output: Кодовое слова арифметического кода Кумулятивные вероятности:
for
End Кодирование: for
End Формирование кодового слова:
Алгоритм декодирования кода Гилберта – Мура Input: Объем алфавита кумулятивные вероятности букв вход декодера Output: Декодированная буква Инициализация: Поиск буквы: while
End Результат:
|