Файл: Контрольная работа по дисциплине Теория информации.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 03.02.2024
Просмотров: 250
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
1 байт = 8 бит.
118 байт =118*8 бит == 944 бита.
Найдём максимальную скорость передачи информации, при которой передача сообщения займёт 3 минуты.
944/180 =5,24>5. Время передачи должно быть меньше 3 минут, то есть 180 с. Значит, скорость передачи должна быть не меньше5 бит/с
Ответ: Юстас должен передавать радиограмму со скоростью не меньше чем 5 бит/с.
6. Закодировать методом Хаффмана Вашу Фамилию Имя Отчество.
Указание:
1. Определяете количество уникальных символов в ФИО.
2. Исходя из этого, узнаёте количество бит, необходимых для
кодирования.
3. Рассчитываете частоту вхождения и вес каждого символа в
строке.
4. Создаете дерево Хаффмана, получая код для каждой буквы.
5. Записываете с помощью этого кода необходимую информацию.
Ильясевич Александр Мустафович
Решение.
-
Вычислим количество появления символов этого предложения и представим их в таблице. (Выпишем все буквы, которые встречаются, по одному разу, и сверху подпишем, сколько раз они повторяются.)
3 | 2 | 1 | 1 | 3 | 1 | 2 | 2 | 2 | 3 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
и | л | ь | я | с | е | в | ч | | а | к | н | д | р | м | у | т | ф | о |
Расположим символы в порядке убывания количества их появления
Мы получили узлы (то есть наши символы – буквы), сверху в которых написано значение счётчика их появлений (сколько раз они встречаются во фразе).
Выберем 2 узла с наименьшими значениями из конца списка «ь» и «я». У них у обоих значение равно 1. Создадим родительский узел (объединим их квадратиком сверху), значение счетчика которого равно 2 (сумме значений в кружочках снизу), и присоединим к нему два выбранных узла в качестве дочерних. Получим первое мини-дерево с корнем-квадратом (это родительский узел) 2 и ветвями 1 и 1. Поместим родительский узел обратно в пул (список). Повторим цикл с самого начала. На этот раз мы выбираем узлы «у» и «ф», объединяем их в мини-дерево, и помещаем родительский узел (значение счетчика которого снова равно 2) обратно в пул. Снова повторим цикл ещё 5 раз для следующих пар символов со счётчиком 1, Создавая для них родительский узел со счётчиком 2 и присоединяя их к нему в качестве дочерних.
1
1
т
о
Снова повторим цикл. На этот раз в нашем распоряжении имеется десять узлов со значениями счетчиков, равными 2 (4 единичных и 6 родительских узлов, которые были добавлены перед этим) и три единичных узла со значением 3. Выберем узлы «л» и «ч» и снова добавим в пул родительский узел, значение счетчика которого равно 4. Также поступим с узлами «пробел» и «в». Выберем узел «а», присоединим его к узлу «и» и снова добавим в пул родительский узел, значение счетчика которого равно 6.
Затем выберем два родительских узла (созданные в предыдущей схеме) со значениями счетчиков, равными 2, присоединим их к новому родительскому узлу со значением счетчика, равным 4, и добавим этот родительский узел в пул.
Выберем родительские узлы со значениями 4 и 4, присоединим их к новому узлу со значением 8. Таких узлов получилось 2.
Выберем родительские узлы со значениями 2 и 2, присоединим их к новому узлу со значением 4.
Выберем узел 3(символ «а») и присоединим его к родительскому узлу 4.
Выберем родительские узлы со значениями 8 и 8, присоединим их к новому узлу со значением 16.
Выберем родительские узлы со значениями 6 и 7, присоединим их к новому узлу со значением 13.
Выберем родительские узлы со значениями 13 и 16, присоединим их к новому узлу со значением 29.
В результате получили результирующее дерево Хаффмана.
Для кодирования информации уберём лишние символы. Начиная с корня дерева (верхнего круга) на всех выходящих из кругов ветках слева напишем «0», а справа «1». Получили кодировочное дерево.
Переходя от одного узла (круга) к другому, начиная с самого верхнего, будем записывать цифры, по которым проходим. В результате получим код для каждого символа.
Коды запишем в таблицу.
Таблица кодирования | |||||||||
| | | | | | | | | |
и | л | ь | я | с | е | в | ч | | л |
000 | 1010 | 11110 | 11111 | 001 | 01011 | 1001 | 1011 | 1000 | 1010 |
а | к | н | д | р | м | у | т | ф | о |
0100 | 0110 | 11000 | 01010 | 11010 | 0111 | 11100 | 11011 | 11101 | 11001 |