Структуры данных: бинарное упорядоченное несбалансированное дерево
Состав работы
|
|
|
|
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
План работы:
1) Постановка задачи
2) Описание программы
3) Код программы на языках Pascal и С++
1. Постановка задачи
Требуется написать программу, реализующую основные операции работы с деревом. Причём, обязательным условием является использование структуры данных класс для описания дерева и методов работы с ним.
2. Описание программы
Описание ведётся для кода на Pascalе, отличия для С++ будут указаны ниже.
В программе основным элементом является класс TTree. Его методы – это основные процедуры работы с деревом:
Create – конструктор класса – процедура, создающая дерево,
Add – метод добавления элемента в дерево,
Del – метод удаления элемента из дерева,
View – метод вывода элементов дерева на экран,
Exist – метод проверки существования элемента с некоторым ключом, по сути поиск элемента,
Destroy – деструктор класса – процедура, удаляющая дерево.
Рассмотрим алгоритмы работы процедур.
Create – создание дерева. Присваивает полю Root (корень) значение nil – указателя, который никуда не указывает.
Add – добавление элемента в дерево. Для построения дерева используем следующий алгоритм. Первый элемент помещаем в корень (инициализируем дерево). Далее поступаем следующим образом. Если добавляемый в дерево элемент имеет ключ больший, чем ключ узла, то, если узел не лист, обходим его справа. Если добавляемый элемент имеет ключ не больший чем ключ узла, то, если узел не лист, обходим его слева. Если дошли до листа, то добавляем элемент соответственно справа или слева.
Del – удаление элемента из дерева.
Удаление узла довольно просто если он является листом или имеет одного потомка. Например, если требуется удалить узел с ключом М надо просто заменить правую ссылку узла К на указатель на L. Трудность заключается в удалении узла с двумя потомками, поскольку мы не можем указать одним указателем на два направления.
1) Постановка задачи
2) Описание программы
3) Код программы на языках Pascal и С++
1. Постановка задачи
Требуется написать программу, реализующую основные операции работы с деревом. Причём, обязательным условием является использование структуры данных класс для описания дерева и методов работы с ним.
2. Описание программы
Описание ведётся для кода на Pascalе, отличия для С++ будут указаны ниже.
В программе основным элементом является класс TTree. Его методы – это основные процедуры работы с деревом:
Create – конструктор класса – процедура, создающая дерево,
Add – метод добавления элемента в дерево,
Del – метод удаления элемента из дерева,
View – метод вывода элементов дерева на экран,
Exist – метод проверки существования элемента с некоторым ключом, по сути поиск элемента,
Destroy – деструктор класса – процедура, удаляющая дерево.
Рассмотрим алгоритмы работы процедур.
Create – создание дерева. Присваивает полю Root (корень) значение nil – указателя, который никуда не указывает.
Add – добавление элемента в дерево. Для построения дерева используем следующий алгоритм. Первый элемент помещаем в корень (инициализируем дерево). Далее поступаем следующим образом. Если добавляемый в дерево элемент имеет ключ больший, чем ключ узла, то, если узел не лист, обходим его справа. Если добавляемый элемент имеет ключ не больший чем ключ узла, то, если узел не лист, обходим его слева. Если дошли до листа, то добавляем элемент соответственно справа или слева.
Del – удаление элемента из дерева.
Удаление узла довольно просто если он является листом или имеет одного потомка. Например, если требуется удалить узел с ключом М надо просто заменить правую ссылку узла К на указатель на L. Трудность заключается в удалении узла с двумя потомками, поскольку мы не можем указать одним указателем на два направления.
Похожие материалы
400 руб.
400 руб.
400 руб.
Структуры данных и алгоритмы
alfFRED
: 6 октября 2013
Оглавление
1. Условие задачи
2. Анализ задачи
3. Выбор и обоснование форм представления данных
4. Алгоритм
5. Текст программы на языке Pascal
6. Выбор и обоснование набора тестов
7. Анализ результатов
Приложение
1. Условие задачи
Имеется некоторое конечное число городов, которые связаны транспортной сетью, состоящей из авиа, железнодорожных, автомобильных и водных рейсов произвольного направления и включающих произвольное число городов.
Стоимость проезда различна по классам. Р
10 руб.
Основные структуры данных
Aronitue9
: 30 мая 2012
Содержание
Введение…………………………………………………………………………3
1. Теоретическая часть
1.1. Основные структуры данных…………………………………………..5
1.2. Линейные структуры (списки данных, векторы данных)…………....5
1.3. Табличные структуры (таблицы данных, матрицы данных)………..5
1.4. Иерархические структуры данных…………………………………….7
1.5. Упорядочение структур данных……………………………………….8
1.6. Заключение……………………………………………………………...10
2. Практическая часть
2.1. Общая характеристика задачи…………………………………….......11
2.2. Описание алгоритма
50 руб.
Динамические структуры данных
1231233
: 24 апреля 2010
Разработать программу для создания и работы с двусвязным списком, состоящим из структур. Для работы со списком создать меню со следующими пунктами:
1. Создание списка.
2. Просмотр списка.
3. Добавление в конец списка новой структуры.
4. Корректировка списка.
5. Выход.
Пункт “корректировка списка” выполнить согласно своему варианту задания.
Вариант № 3: Структура содержит название книги, автора, год издания. Удалить издания с годом меньше заданного.
СОДЕРЖАНИЕ
Введение. 4
1. Постановка комплекса
23 руб.
Динамические структуры данных: стеки
Slolka
: 2 октября 2013
По определению, элементы извлекаются из стека в порядке, обратном их добавлению в эту структуру, т.е. действует принцип "последний пришёл — первый ушёл".
Наиболее наглядным примером организации стека служит детская пирамидка, где добавление и снятие колец осуществляется как раз согласно определению стека.
Стек можно организовать на базе любой структуры данных, где возможно хранение нескольких однотипных элементов и где можно реализовать определение стека: линейный массив, типизированный файл,
10 руб.
Презентация - Алгоритмы и структуры данных
alfFRED
: 24 ноября 2012
Содержание:
Основные алгоритмы и структуры данных.
Поиск.
Сортировка.
Списки.
Деревья.
Таблицы.
10 руб.
Другие работы
КУРСОВАЯ РАБОТА по дисциплине «Сетевое программное обеспечение». Вариант №08.
ДО Сибгути
: 27 ноября 2017
Задание
Написать программу взаимодействия двух машин в режиме “клиент-сервер”. В исходном состоянии машины ждут ввода с клавиатуры команды запроса – ls. Окончание ввода команды и ее отправка определяется клавишей <Enter>. На приемной стороне в ответ на принятую команду формируется и отправляется в канал текстовое сообщение со списком файлов текущей директории. Передающая сторона принимает этот список и отображает его на экране. Установление связи, передача данных и завершение связи выполнять в с
200 руб.
Какие из перечисленных традиций не составляют основу создания КСО России:
ann1111
: 9 июня 2022
Какие из перечисленных традиций не составляют основу создания КСО России:
Выберите один ответ:
a. традиции и опыт охраны труда
b. традиции и опыт охраны окружающей среды
c. религиозные традиции
d. традиции и опыт социальной помощи
10 руб.
Ценовая дискриминация условия, типы, значение
Slolka
: 5 ноября 2013
Содержание Содержание 2 1. Теоретическая часть 3 1.1. Ценовая дискриминация: условия, типы, значение 3 Задача №1. 8 1. Теоретическая часть 1.1. Ценовая дискриминация: условия, типы, значение
Ценовая дискриминация - монополистическая конкуренция, при которой в один и тот же момент один и тот же продукт продается разным покупателям по разным ценам, причем разница в ценах не оправдана различиями в издержках производства этого продукта. Обязательными условиями ценовой дискриминации являются:
- отс
5 руб.
Радиатор пластинчатый - Вариант 27
.Инженер.
: 18 марта 2026
В.П. Большаков. Создание трехмерных моделей и конструкторской документации в системе КОМПАС-3D. Практикум. Создать ассоциативный чертеж по аксонометрическому изображению. Задание 10. Вариант 27
1. По заданной аксонометрической проекции выполнить трехмерную модель радиатора пластинчатого.
2. По модели создать и оформить трехпроекционный ассоциативный чертеж и дополнить его аксонометрией.
В состав работы входит:
Чертеж;
3D модель.
Выполнено в программе Компас + чертеж в PDF.
100 руб.