Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Разработка структуры программы





Задание

Разработать программу создания и обработки заданной структуры данных. Определить рекурсивные функции обходов дерева (в прямом, обратном и симметричном порядке).

Разработать пользовательский интерфейс.

Предусмотреть выполнение следующих обязательных опций:

1 - создать (ввести с клавиатуры и/или загрузить из файла);

2 - добавить (удалить) элемент;

3 - обход дерева;

4 - индивидуальное задание:

  Дерево двоичное Определение числа листьев

 

Анализ задания

Для решения данной задачи мы должны в первую очередь описать динамическую структуру данных «двоичное дерево» на основе указателей, написать стандартные операции работы с ним, а затем дополнить их операцией обхода дерева с подсчитыванием числа листьев на нём. Пользовательский интерфейс должен позволять производить с деревом стандартные операции, просматривать его (по крайней мере в самом общем виде) и определять число листьев.

 

Двои́чное де́рево — древовидная структура данных, в которой каждый узел имеет не более двух потомков (детей). Как правило, первый называется родительским узлом, а дети называются левым и правым наследниками.

 

Разработка структуры программы

 

 

Рисунок 1. Структура программы.

Таблица 1. Спецификация программы.

Имя модуля Имя вызывающего модуля Назначение Входные данные Выходные данные Особенности
main - Функция, инициализирующая программу - - -
button1_Click   main Выполнение выбранного пользователем действия comboBox1->SelectedIndex, textBox1->Text - Основная функция программы
search button1_Click Поиск элемента tree *root, int name - -
search_dubl button1_Click Поиск дубликатов tree *root - -
obhod1 button1_Click   Рекурсивный обход 1 (Прямой обход) tree *root - -
obhod2 button1_Click Рекурсивный обход 2 (Обратный обход) tree *root - -
obhod3 button1_Click Рекурсивный обход 3 (Симметричный обход) tree *root - -
obhod0 button1_Click Рекурсивный обход 0 (Прямой обход) для подсчитывания числа листьев tree *root - Основана на функции obhod1
delder button1_Click Удаление дерева tree *root tree *root -
del button1_Click Удаление числа (элемента) tree *root, int name tree *root -
descent del Спуск по дереву (для функции удаления) tree *p tree *y Вспомогательная функция для функции del
add button1_Click Добавление числа tree *root, int n - -
readfile button1_Click Считывание дерева из файла tree **root - -
first button1_Click, readfile Создание первого элемента бинарного дерева int name tree *root Вспомогательная функция для функций button1_Click и readfile






Дата добавления: 2015-09-04; просмотров: 436. Нарушение авторских прав; Мы поможем в написании вашей работы!




Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...


Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...


Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Что такое пропорции? Это соотношение частей целого между собой. Что может являться частями в образе или в луке...

Растягивание костей и хрящей. Данные способы применимы в случае закрытых зон роста. Врачи-хирурги выяснили...

ФАКТОРЫ, ВЛИЯЮЩИЕ НА ИЗНОС ДЕТАЛЕЙ, И МЕТОДЫ СНИЖЕНИИ СКОРОСТИ ИЗНАШИВАНИЯ Кроме названных причин разрушений и износов, знание которых можно использовать в системе технического обслуживания и ремонта машин для повышения их долговечности, немаловажное значение имеют знания о причинах разрушения деталей в результате старения...

Основные симптомы при заболеваниях органов кровообращения При болезнях органов кровообращения больные могут предъявлять различные жалобы: боли в области сердца и за грудиной, одышка, сердцебиение, перебои в сердце, удушье, отеки, цианоз головная боль, увеличение печени, слабость...

Вопрос 1. Коллективные средства защиты: вентиляция, освещение, защита от шума и вибрации Коллективные средства защиты: вентиляция, освещение, защита от шума и вибрации К коллективным средствам защиты относятся: вентиляция, отопление, освещение, защита от шума и вибрации...

Задержки и неисправности пистолета Макарова 1.Что может произойти при стрельбе из пистолета, если загрязнятся пазы на рамке...

Studopedia.info - Студопедия - 2014-2026 год . (0.012 сек.) русская версия | украинская версия