![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Одно и то же сообщение можно закодировать различными способами. Оптимально закодированным будем считать такой код, при котором на передачу сообщений затрачивается минимальное время. Если на передачу каждого элементарного символа (0 или 1) тратиться одно и то же время, то оптимальным будет такой код, который будет иметь минимально возможную длину.
Метод Хаффмана: буквы алфавита сообщений вписываются в столбец в порядке убывания вероятностей. Две последние буквы объединяются в одну вспомогательную букву, которой приписывается суммарная вероятность. Вероятности букв, не участвовавших в объединении, и полученная суммарная вероятность снова располагаются в порядке убывания вероятностей в дополнительном столбце, а две последние буквы объединяются.
Кодирование методом Хаффмана.
В методе Хаффмана кодовые слова формируются, начиная с последнего символа.
Шаг 1. Переменной-счетчику t присваиваем значение 1: t:= 1. Рассматриваем вспомогательную последовательность символов At, полагая на первом шаге a 1 = А.
Шаг 2. Из последовательности At выбираем М символов ai1,аi2,..... aim, которым соответствуют наименьшие вероятности появления
Шаг 3. Для выбранных символов формируются очередные (считая от конца) элементы кодовых слов: в кодовое слово, соответствующее символу ai, (i= 1, 2,..., М), добавляется символ кодового алфавита bi.
Шаг 4 Символы ai1, ai2,...., aim объединяются в один вспомогательный
м символ at с вероятностью р(аt) = S p(ai)
Шаг 5. Из последовательности символов исходного алфавита At исключаем символы ai1, ai2,...., aim, вместо них добавляем аt. Полученную последовательность обозначим At+1.
Шаг 6. Если At+1 состоит из одного элемента, то алгоритм заканчивает работу. Иначе t:= t + 1 и переходим к шагу 2.
Процесс продолжается до тех пор, пока все символы исходного алфавита не будут заменены одним вспомогательным символом, которому должна соответствовать вероятность 1.
Дата публикования: 2015-03-29; Прочитано: 442 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!