Автор | Сообщение |
|
Отправлено: 10.04.16 06:39. Заголовок: Задача 128 (генератор тесто)
(№ 128) Для кодирования некоторой последовательности, состоящей из букв А, Б, В, Г и Д, используется неравномерный двоичный код, позволяющий однозначно декодировать полученную двоичную последовательность. Вот этот код: А – 00; Б – 101; В – 011; Г – 111; Д – 110. Как можно сократить длину кодового слова для буквы Б так, чтобы код по-прежнему можно было декодировать однозначно? Коды остальных букв меняться не должны. Если есть несколько вариантов, выберите кодовое слово с минимальным значением. Ответ должен быть 10, а не 01. Если Б станет 01, то нарушается условие Фано - код этой буквы будет являться началом буквы В
|
|
|
Ответов - 1
[только новые]
|
|
|
| Администратор
|
Сообщение: 1075
|
|
Отправлено: 10.04.16 06:47. Заголовок: grinvolic1970 пишет:..
grinvolic1970 пишет: цитата: | Если Б станет 01, то нарушается условие Фано - код этой буквы будет являться началом буквы В |
|
Да. Но сохранится обратное условие Фано - никакое кодовое слово не совпадает с окончание другого кодового слова. Поэтому сообщение однозначно декодируется с конца.
|
|
|