ВАРИАНТ-3 (НУАЖНЫ 2, 3, 4, 5 лабораторная) Правила

advertisement
ВАРИАНТ-3 (НУАЖНЫ 2, 3, 4, 5 лабораторная)
Правила выполнения лабораторных работ
Лабораторные работы выполняются на языках высокого уровня (Паскаль, Си). По
согласованию с преподавателем допускается лабораторных работ в средах Delphi, Builder
C++, Visual C++. Для зачета по лабораторной работе студенту необходимо представить



Исходные тексты программ с подробными комментариями;
Исполняемые файлы;
Отчет по лабораторной работе.
Отчет должен включать в себя следующие разделы




Формулировку задания
Описание основных методов, используемых в лабораторной работе;
Результаты работы программы (в виде файла или в виде скриншота);
Анализ результатов.
Тестирование программ должно проводиться для различных случаев: упорядоченный
массив (прямой или обратный порядок), случайный массив.
Лабораторная работа 1
Тема: Построение двоичного дерева. Вычисление характеристик дерева.
Цель работы: Освоить понятие двоичного дерева.
Порядок выполнения работы:
1. Разместить в памяти компьютера данное двоичное дерево (см. ниже, номер задания
соответствует последней цифре шифра – 3 ), данные в вершинах заполнить
случайными числами.
2. Написать процедуры для вычисления размера дерева, высоты дерева, средней
высоты дерева, контрольной суммы для дерева и проверить их работу на
конкретном примере.
3. Запрограммировать обход двоичного дерева слева направо и вывести на экран
получившуюся последовательность данных.
Лабораторная работа 2
Тема: Построение случайного дерева поиска и идеально сбалансированного дерева поиска
Цель работы: Освоить методы построения случайного дерева поиска и идеально
сбалансированного дерева поиска.
Порядок выполнения работы:
1. Разработать процедуры построения СДП и ИСДП.
2. Вычислить среднюю высоту построенных деревьев для n=10, 50, 100, 200, 400 (n количество вершин в дереве). Заполнить таблицу следующего вида и
проанализировать полученные результаты
n
10
50
100
200
400
Высота СДП
Высота ИСДП
3. Написать процедуру, определяющую является ли двоичное дерево деревом поиска.
Проверить ее работу на построенных СДП и ИСДП.
4. Запрограммировать процедуру поиска в дереве поиска элемента с заданным
ключом и проверить ее работу на построенных СДП и ИСДП.
5. Определить количество операций, необходимых для поиска. Сравнить эту
величину с высотой дерева.
Лабораторная работа 3
Тема: Построение АВЛ-дерева.
Цель работы: Освоить построение АВЛ-дерева.
Порядок выполнения работы:
1. Разработать процедуру построения АВЛ-дерева.
2. Вычислить среднюю высоту АВЛ-дерева для n=10, 50, 100, 200, 400 (n -количество
вершин в дереве) и заполнить таблицу следующего вида. Проанализировать
полученные результаты, сравнить их с теоретическими оценками и результатами из
лабораторной работы 1.
n
Высота
АВЛ-дерева
Теоретическая
оценка
10
50
100
200
400
3. Экспериментально определить среднее количество поворотов на одну включаемую
вершину в АВЛ-дерево.
Лабораторная работа 4
Тема: Построение двоичного Б-дерева.
Цель работы: Освоить построение двоичного Б-дерева.
Порядок выполнения работы:
1. Разработать процедуру построения двоичного Б-дерева.
2. Вычислить среднюю высоту двоичного Б-дерева для n=10, 50, 100, 200, 400 (n количество вершин в дереве) и заполнить таблицу следующего вида.
Проанализировать полученные результаты, сравнить их с теоретическими
оценками и результатами из лабораторной работы 3.
n
Высота ДБД
Теоретическая
оценка
10
50
100
200
400
Лабораторная работа 5
Тема: Построение дерева почти оптимального поиска
Цель работы: Освоить методы построения ДОП приближенными методами.
Порядок выполнения работы:
1. Разработать процедуры построения ДОП приближенными методами А1 и А2.
2. Вычислить средневзвешенную высоту построенных ДОП для n=10, 50, 100, 200,
400 (n -количество вершин в дереве) и заполнить таблицу следующего вида.
Проанализировать полученные результаты, сравнить их между собой.
n
Средневз.
высота
Средневз.
высота
Алгоритм А1
Алгоритм А2
10
50
100
200
400
Download