Файл: Контрольная работа по дисциплине Теория информации.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 03.02.2024

Просмотров: 261

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.


1 байт = 8 бит.

118 байт =118*8 бит == 944 бита.

Найдём максимальную скорость передачи информации, при которой передача сообщения займёт 3 минуты.

944/180 =5,24>5. Время передачи должно быть меньше 3 минут, то есть 180 с. Значит, скорость передачи должна быть не меньше5 бит/с

Ответ: Юстас должен передавать радиограмму со скоростью не меньше чем 5 бит/с.

6. Закодировать методом Хаффмана Вашу Фамилию Имя Отчество.

Указание:

1. Определяете количество уникальных символов в ФИО.

2. Исходя из этого, узнаёте количество бит, необходимых для

кодирования.

3. Рассчитываете частоту вхождения и вес каждого символа в

строке.

4. Создаете дерево Хаффмана, получая код для каждой буквы.

5. Записываете с помощью этого кода необходимую информацию.

Ильясевич Александр Мустафович

Решение.

  1. Вычислим количество появления символов этого предложения и представим их в таблице. (Выпишем все буквы, которые встречаются, по одному разу, и сверху подпишем, сколько раз они повторяются.)

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