Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Пример выполнения задания. В качестве примера рассмотрим проект (для последовательно введенных ключей 10 (корень), 25, 20, 6, 21



В качестве примера рассмотрим проект (для последовательно введенных ключей 10 (корень), 25, 20, 6, 21, 8, 1, 30), который создает дерево, отображает его в Memo, удаляет элемент по ключу и удаляет дерево. Панель диалога будет иметь вид, представленный на рис. 5.2.

Как и в предыдущих примерах, приведем только тексты функций-обработчиков соответствующих кнопок, а тексты функций пользователя рассмотрены выше:

Рис. 5.2

//----------------------------- Шаблон структуры ----------------------------------------------

struct Tree {

int info;

Tree *left, *right;

}*root; // Корень

//----------------- Декларации прототипов функций работы с деревом ----------------

void Add_List(Tree*, int);

void View_Tree (Tree*, int);

Tree* Del_Info(Tree*, int);

void Del_Tree(Tree*);

Tree* List(int);

//--------------------- Текст функции-обработчика кнопки Создать --------------------

if(root!= NULL) Del_Tree(root);

root = List (StrToInt(Edit1->Text));

//--------------------- Текст функции-обработчика кнопки Просмотреть ------------

if(root == NULL) ShowMessage(" Create TREE!");

else {

Memo1->Lines->Add("---------- View -----------");

View_Tree(root, 0);

}

//--------------------- Текст функции-обработчика кнопки Добавить ------------------

if(root == NULL) root = List (StrToInt(Edit1->Text));

else Add_List (root, StrToInt(Edit1->Text));

//--------------------- Текст функции-обработчика кнопки УдалитьINFO -----------

int b = StrToInt(Form1->Edit1->Text);

root = Del_Info(root, b);

//--------------------- Текст функции-обработчика кнопки ОЧИСТИТЬ ---------------

Del_Tree(root);

ShowMessage(" Tree Delete!");

root = NULL;

//--------------------- Текст функции-обработчика кнопки EXIT ------------------------

if(root!=NULL){

Del_Tree(root);

ShowMessage(" Tree Delete!");

}

Close();





Дата публикования: 2015-02-22; Прочитано: 197 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...