- •Определение графа, его специальные разновидности и классы.
- •Определение и свойства деревьев.
- •Корневые деревья
- •Полные бинарные деревья
- •Бинарные поисковые деревья
- •Сбалансированные деревья
- •Понятие кода и способы их задания.
- •Понятие о количестве информации.
- •Понятие и свойства энтропии.
- •Свойства энтропии:
- •Оптимальное кодирование информации.
- •Свойства оптимальных кодов:
- •Основные понятия помехоустойчивого кодирования.
-
Определение и свойства деревьев.
Деревом называется произвольный связный граф без циклов. Деревья обладают следующими свойствами:
-
любые две вершины соединены единственной простой цепью
-
количество ребер на единицу меньше количества вершин
-
при удалении любого ребра дерево становится не связным графом
-
при добавлении к дереву любого ребра в дереве появляется ровно один простой цикл
Остов Т графа G – это дерево графа G, содержащая все вершины графа G.
Кодеревом Т* остова Т графа G называется подграф G, содержащий все вершины G и только те ребра G, которые не входят в Т.
Ребра Т – называются ветвями Т, ребра Т* – хорды.
k-деревом называется ациклический граф, состоящий из k компонент. Остовым k деревом графа G называется k-дерево, является остовым подграфом графа G.
k-деревом Т* остового k-дерева графа G называется остовой подграф графа G, содержащий те ребра, которых нет в Т.
Лесом графа G называется k-остовое дерево графа G, где k – число компонент G.
Фактически дерево можно получить из любого связного графа.
Утверждение: любой связный граф содержит остовный подграф который является деревом. Этот подграф называется остовным деревом.
Специальные виды деревьев
-
Корневые деревья
Определение: Корневое дерево- ориентированное дерево, которое удовлетворяет условиям:
-
Имеется ровно один узел в который не входит не одно ребро, этот узел- корень
-
В каждый узел кроме корня входит ровно одно ребро
-
Из корня имеется путь к любому ребру.
-
Бинарные деревья
Определение:Бинарное дерево- корневое дерево у каждой вершины которого не более двух сыновей.
В таком дереве любой произвольный узел имеет левого и правого сына. Поддерево корнем которого является левый сын называется левым поддеревом. Поддерево корнем которого является правый сын называется правым поддеревом.
-
Полные бинарные деревья
Определение: Полное бинарное дерево- бинарное дерево для которого выполняются условия:
-
Заполнение дерева осуществляется от корня к листьям по уровням.
-
Заполнение уровней осуществляется слева направо.
Полные бинарные деревья представляются в виде одномерного массива: первый элемент массива- корень дерева. Для любого i-того узла элемент с индексом ( 2i)- левый сын, элемент с индексом (2i+1)- правый сын. Отец узла j – (j/2).
-
Бинарные поисковые деревья
Определение:Бинарное поисковое дерево- дерево поиска, если для любого узла V:
-
Все ключи в левом поддереве меньше ключа узла V
-
В правом поддереве все ключи больше, чем ключ V
-
В дереве нет одинаковых ключей.
-
Сбалансированные деревья
Определение: Дерево называется идеально сбалансированным, если оно является бинарным поисковым деревом и число вершин его левых и правых поддеревьев отличается не более, чем на единицу.
Определение: Дерево называется сбалансированным, если оно бинарное поисковое и высоты двух поддеревьев в каждой из вершин отличаются не более, чем на единицу.
-
Понятие кода и способы их задания.
Кодом в широком смысле называется совокупность знаков и система правил, в соответствии с которыми осуществляется преобразование сообщений из одного вида в другой для передачи, обработки и хранения информации.
Совокупность знаков кода называется алфавит. Кодовое слово это последовательность знаков, отображающих некоторое сообщение. Кодовое множество это набор всевозможных кодовых слов. Длиной кодового слова n называется количество символов в слове. Если длина кодового слова постоянна, то код наз. Равномерным, иначе неравномерным. Мощность кода M соответствует количеству кодовых слов во множестве. Кодовое множество наз. Полным, если в нем представлены все слова, которые можно получить из букв алфавита. Для равномерного кода M=kn, где k – количество символов в алфавите, n – длина кодового слова.
Способы задания кода:
-
Перечисление кодовых слов в виде векторов или полиномов.
-
Геометрические модели, которые строятся в виде геометрических фигур или их разверток. Где каждая ось соответствует определенной позиции в кодовом слове. Геометрическое представление кода используется для наглядности изображения и для облегчения анализа кода.
-
Кодовое дерево или граф. Истоком дерева служит корень, ветви объединяются узлами. Конечные элементы наз. Листьями и представляют собой кодовое множество. Ветви помечаются символами алфавита, и при переходе от корня к листу получается кодовое слово.
-
Базисная матрица. Она включает только линейнонезависимые слова. Суммируя эти слова в различных сочетаниях, получается кодовое слово.
Выбор способа кодирования зависит от конкретной задачи, решаемой исследователем.
Классификацию кодов можно производить по нескольким признакам:
-
Система исчисления, зависит от количества цифр в алфавите кода: двоичные, троичные, восьмиричные, шестнадцатиричные.
-
Построение кода: систематические, в которых часть кода несет основную информацию, а часть кода для обнаружения ошибок; и несистематические – содержат только основную информацию.
-
Наличие избыточности. Если все слова кодового множества используются для кодирования сообщения, то код наз. Неизбыточным. Только избыточные коды позволяют обнаруживать и исправлять ошибки.