Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];




Вниз

Иерархическая структура 


vuk   (2001-12-28 15:21) [2]

В принципе - ничего особо сложного. Каждый узел дерева (Node) можно представить как что-то типа того:

TNode = class
//это, я думаю, понятно
property Parent : TNode ... ;
property Children[index : integer]:TNode ...;
property ChildrenCount : integer ...;
property Data : .... ;

//это не обязательно, но иногда удобнее для обхода дерева,
//да и структуру дерева можно строить именно через эти
//свойства
//FirstChild - первый "ребенок" узла
property FirstChild : TNode...;
//NextSibling - следующий "родной брат"
property NextSibling : TNode...;

end;

все нужные операции (добавление/удаление элементов), я думаю, очевидны.

Если объекты по каким-то причинам не устраивают, то можно все сделать на record"ах.
Для удобства все элементы дерева можно хранить в линейном массиве - это иногда упрощает обход элементов.




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.71 MB
Время: 0.015 c
3-52466           Turalyon              2001-12-13 10:35  2002.01.17  
DBCtrlGrid & CheckBox.


1-52535           tovSuhov              2001-12-27 16:04  2002.01.17  
Люди! Совсем запутался.


7-52669           Woolen                2001-10-01 13:10  2002.01.17  
Блокирование


1-52528           alexias               2001-12-27 14:54  2002.01.17  
Дерево каталогов просканировать


1-52604           shnitken              2001-12-28 03:50  2002.01.17  
MediaPlayer