Теория информации

На основе кодов Хаффмана и Шеннона-Фано существует блочное кодирование. Пример 1.24. Возьмем 32 две буквы русского алфавита. Частоты этих букв известны. В алфавит включен и пробел, частота которого составляет 0,145. Метод кодирования представлен в таблице 1.6. Таблица 1.6 Буква Р i 1 2 3 4 Код ب 0.145 0 0 - 000 о 0.095 1 - 001 е 0.074 0 0 0 0100 а 0.064 1 1 0101 и 0.064 1 0 0110 н 0.056 1 0111 т 0.056 0 0 - с 0.047 1 1 0 ... … … … … … ф 0.03 1 1) Средняя длина данного кода будет равна: k  4 45 . бит/букву; 2)Энтропия: H=4.42 бит/буква. 3) Эффективность полученного кода можно определить как отношение энтропии к средней длине кода. Она равна 0,994. 4) При значении равном единице код является оптимальным. Если бы мы кодировали кодом равномерной длины: 5 32 log   р k , то эффективность была бы значительно ниже: 884 .0 5 42.4 ; 994 .0      p эфф эфф k H K k H K . 1.3.6. Код Хаффмана Второй код, являющийся не менее эффективным, чем код Шеннона- Фано, является код Хаффмана.

RkJQdWJsaXNoZXIy MTY0OTYy