Алгоритм построения кодового дерева кода Хаффмена
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 Результат:
|