Для кодирования некоторой последовательности, состоящей из букв К, Л, М, Н, решили использовать неравномерный двоичный код, удовлетворяющий условию Фано. Для буквы Н использовали кодовое слово 0, для буквы К – кодовое слово 10. Какова наименьшая возможная суммарная длина всех кодов?
Сначала определим вероятности появления каждой буквы:
P(К) = p1P(Л) = p2P(М) = p3P(Н) = p4Поскольку код удовлетворяет условию Фано, то сумма произведений вероятностей каждой буквы на длину ее кодового слова должна быть минимальной.
Таким образом, для нашего случая существует следующее соотношение:
p3 L3 = p2 L2 = p1 * L1
Известно, что L1 = 2, L2 = 1, L3 = 3 (код для Н - 0, для К - 10).
Теперь мы можем записать:
p4 1 = 1 2
p3 3 = p2 1
p4 = 2/3, p3 = 1/3, p2 = 1/3, p1 = 1/3
Таким образом, наименьшая возможная суммарная длина всех кодов будет равна:
1 1/3 + 2 1/3 + 3 * 1/3 = 2
Ответ: 2.