Вопрос:

По каналу связи передаются сообщения, содержащие буквы из набора А, З, К, Н, Т.

Фотография

Ответ ассистента

Задача №3 Для выполнения условия Фано (никакое кодовое слово не является началом другого) построим двоичное дерево. У нас есть: К = 0 (длина 1) Н = 100 (длина 3) Свободные ветки для А, З, Т: 1) Ветка, начинающаяся на 1 (так как 0 занят). 2) Из 1 можно получить ветки длины 2 (10 и 11). 3) 10 занято под Н (100), значит, 10 свободно для использования дальше нельзя, так как Н занимает 100. Если мы возьмем 101, это будет код длины 3. 4) 11 свободно. Можно взять 11 (длина 2). Чтобы минимизировать общую длину кода слова «КАНТАТА» (К-А-Н-Т-А-Т-А), нужно присвоить самые короткие коды самым часто встречающимся буквам (хотя частота не дана, попробуем минимизировать длину кода для всех). Буквы: К, А, Н, Т, А, Т, А. К = 0 (1 бит) Н = 100 (3 бита) Нужно еще 3 кода для А, З, Т. Оставшиеся ветки: - 11 (длина 2) - 101 (длина 3) - 110 (длина 3) - 111 (длина 3) Выберем самые короткие для А и Т, так как они встречаются чаще всего (А встречается 3 раза, Т — 2 раза). Пусть А = 11 (2 бита), Т = 101 (3 бита), З = 110 (3 бита). Длина слова «КАНТАТА»: К (0) = 1 бит А (11) = 2 бита Н (100) = 3 бита Т (101) = 3 бита А (11) = 2 бита Т (101) = 3 бита А (11) = 2 бита Сумма: 1 + 2 + 3 + 3 + 2 + 3 + 2 = 16 бит. Ответ: 16. Задача №4 Даны коды цветов: Белый — 0 (длина 1) Фиолетовый — 110 (длина 3) Зеленый — 11111 (длина 5) Красный — 10 (длина 2) Чёрный — 1110 (длина 4) Для условия Фано нужно, чтобы ни один код не был началом другого. Проверим: 0 - не начало для других. 10 - не начало для других. 110 - не начало. 1110 - не начало. 11111 - не начало. Остался один цвет (пусть «синий»). Свободные префиксы: - начинается на 1111...: 11110 Ответ: 11110.

Другие решения

Что ещё задавали пользователи