Структуры данных: бинарное упорядоченное несбалансированное дерево
Состав работы
|
|
|
|
Работа представляет собой 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 руб.
Другие работы
Теория сложностей вычислительных процессов и структур. Лабораторная работа №2. Вариант №4
zhekaersh
: 1 марта 2015
Графы. Поиск остова минимального веса.
Написать программу, которая по алгоритму Краскала находит остов минимального веса для связного взвешенного неориентированного графа, имеющего 7 вершин. Граф задан матрицей весов дуг, соединяющих всевозможные пары вершин (0 означает, что соответствующей дуги нет). Данные считать из файла.
Номер варианта выбирается по последней цифре.
40 руб.
Лабораторные работы №№1-3 по дисциплине: Базы данных. Цифры 12
IT-STUDHELP
: 30 декабря 2021
Лабораторная работа No1
Создание и редактирование таблиц баз данных
Цель работы:
Приобрести навыки создания и редактирования таблиц базы данных в различных режимах работы в любой доступной системе управления базами данных (СУБД)/
Задание 1. Создание новой таблицы в режиме таблицы.
Данный режим позволяет пользователю создать таблицу, не определяя предварительно ее структуру. После выбора режима открывается пустая таблица, в которую можно ввести данные. При сохранении MS Access автоматически пр
900 руб.
Управленческий анализ в отраслях
Aronitue9
: 19 января 2012
Вариант 4
Задание 1 Задание выполняется в виде реферата на тему:
Строительные организации
Особенности формирования технико-экономических показателей их деятельности и источники информации для управленческого анализа
Особенности анализа выручки и себестоимости от выполненных строительно-монтажных работ (СМР)
Практическая часть
Задание 2 Инвестиционный анализ
1) По проектам А и Б требуются одинаковые переменные затраты в 750 тыс. руб., но предлагаются различные во времени поступательные доходы. С
20 руб.
Расчет параметров срабатывания микропроцессорной РЗ. ДЗО кабельной вставки на ВЛ 220 кВ с двусторонним питанием. Шкаф фирмы ЭКРА ШЭ2607 051
VikkiROY
: 30 января 2015
Расчет уставок микропроцессорного терминала ШЭ 2607 051.
Расчет проводится согласно [31] и [32] для терминала БЭ2704 051. Выбор уставок ДЗО включает в себя определение значений параметров срабатывания реле, выдержек времени и положений программируемых накладок.
П10.1. Расчет базисных токов для защит и выравнивание токов присоединений для шкафов защиты шин и ошиновок.
Расчет базисных токов присоединений ТТ в терминалах производится в следующей последовательности (принимаем Iном = 1 А):
1) главны
20 руб.