Коды Шенона-Фано: | |
Коды Шенона-Фано применияются для кодирования
данных. В отличии от кодов Хаффмана они обеспечивают меньшую эффективность. Пусть имеется массив частот встречаемости символов A, бита символа B и кода символа C. Тогда для построения кода для каждого символа нужно сделать следующее: Разобьем все символы на 2 части. К коду каждого символа из первой группы добавим 0, из второй - 1. Повторим алгоритм рекурсивно для каждой группы, пока в группе не останется 1 символ. Кодирование: Для того, чтобы закодировать символ s, нужно вывести код символа s - С[s] Декодирование обратно кодированию. |