Возможно, имелось в виду эффективное кодирование, при котором обеспечивается минимальная средняя длина кодовых слов. edu.mmcs.sfedu.ru
Принцип создания эффективных кодовых слов заключается в том, что символу, встречающемуся чаще всего, присваивается наиболее короткая кодовая комбинация. edu.mmcs.sfedu.ru Менее вероятным буквам, наоборот, присваивают более длинные комбинации. lib.ulstu.ru
Эффективное кодирование базируется на теореме Шеннона о кодировании при отсутствии помех. edu.mmcs.sfedu.ru
Некоторые методы построения эффективных кодов:
- Метод Шеннона–Фано. edu.mmcs.sfedu.ru Буквы алфавита располагаются в порядке убывания вероятностей. edu.mmcs.sfedu.ru Затем алфавит разбивают на две группы так, чтобы суммарные вероятности букв обеих групп были по возможности равны. edu.mmcs.sfedu.ru Первой группе присваивают символ 1, второй — 0. edu.mmcs.sfedu.ru Далее каждую из образованных групп делят на две части с приблизительно равными суммарными вероятностями и присваивают им 1 и 0. edu.mmcs.sfedu.ru Процесс повторяют до тех пор, пока в каждой подгруппе не останется по одной букве. edu.mmcs.sfedu.ru
- Метод Хаффмана. edu.mmcs.sfedu.ru Буквы алфавита выписываются в столбец в порядке убывания вероятностей. edu.mmcs.sfedu.ru Две последние буквы объединяют в одну вспомогательную букву, которой присваивают суммарную вероятность. edu.mmcs.sfedu.ru Затем вероятности букв, участвующих в объединении, и полученная суммарная вероятность вновь располагаются в порядке убывания вероятностей в дополнительном столбце, а две последние буквы объединяют. edu.mmcs.sfedu.ru Процесс продолжается до тех пор, пока не будет получена единственная вспомогательная буква с суммарной вероятностью, равной 1. edu.mmcs.sfedu.ru