Студопедия

КАТЕГОРИИ:

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


Программа работы. 1. Создать новый проект в меню FileðNewðVCL Forms Application, добавить к нему два новых модуля (FileðNewðUnit) и сохранить все файлы в папке




1. Создать новый проект в меню FileðNewðVCL Forms Application, добавить к нему два новых модуля (FileðNewðUnit) и сохранить все файлы в папке с именем ‘…\Лабораторная работа № 16’.

2. В заголовочной части второго модуля объявить класс TTreeNode и все его методы в соответствии с ADT – форматом.

3. В заголовочной части третьего модуля объявить класс TTree и все его методы в соответствии с ADT – форматом, подключить, первоначально, второй модуль.

4. Создать на форме компоненты Edit1 ¸ EditN и RadioGroup1, и в компонентах Edit1 ¸ EditN-1 представить буквы Вашей фамилии в виде бинарного дерева.

Рис. 8. Примерное расположение компонентов на форме

5. Добавить к классу TTree методы прямого, обратного, симметричного и поперечного прохождения дерева, используя для первых трех рекурсию, а для последнего – очередь.

6. В обработчике выбора пунктов компонента RadioGroup1 сформировать бинарное дерево из букв Вашей фамилии, объявив объекты TTree и TTreeNode для типа сhar, и вывести результаты соответствующего способа прохода данного дерева в компонент EditN в зависимости от выбранного пункта в компоненте RadioGroup1.

7. Запустить программу на выполнение и записать в отчет расположение компонентов на форме, обработчик выбора пунктов компонента RadioGroup1 и полученные результаты, представив их в виде таблицы.

8. Ответить на контрольный вопрос, записав в отчет разработанный метод, обработчик его использования и результат выполнения программы.


Контрольные вопросы

1. Записать ADT – формат и объявление класса TTreeNode.

2. Записать реализацию метода AddChild класса TTreeNode и объяснить его работу.

3. Записать реализацию метода InsertChild класса TTreeNode и объяснить его работу.

4. Записать реализацию метода DeleteChild класса TTreeNode и объяснить его работу.

5. Записать ADT – формат и объявление класса TTree.

6. Записать реализацию метода Add класса TTree и объяснить его работу.

7. Записать реализацию метода Insert класса TTree и объяснить его работу.

8. Записать реализацию метода Delete класса TTree и объяснить его работу.

9. Записать реализацию метода AddChild класса TTree и объяснить его работу.

10. Записать реализацию метода InsertChild класса TTree и объяснить его работу.

11. Записать реализацию метода DeleteChild класса TTree и объяснить его работу.

12. Представить строку ‘Программирование’ в виде бинарного дерева и записать результат его прохода всеми четырьмя способами.

13. Записать и протестировать в программе оператор равно для класса TTree.

14. Записать и протестировать в программе оператор не равно для класса TTree.

15. Записать и протестировать в программе метод нахождения количества узлов дерева.

16. Записать и протестировать в программе метод нахождения глубины дерева.

17. Записать и протестировать в программе метод нахождения плотности дерева.

18. Записать и протестировать в программе не рекурсивный метод прямого прохождения дерева.

19. Записать и протестировать в программе не рекурсивный метод обратного прохождения дерева.

20. Записать и протестировать в программе не рекурсивный метод симметричного прохождения дерева.

21. Записать и протестировать в программе метод поиска узла с заданными данных, объяснив преимущества использования для этого деревьев.

22. Определить глубину и плотность следующих деревьев:



Поделиться:

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





lektsii.com - Лекции.Ком - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты