Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];

Вниз

Количество дочерних элементов элементов в дереве   Найти похожие ветки 

 
Dionnis   (2004-10-16 16:42) [0]

Добрый день всем! В дереве нужно посчитать для каждого узла количество всех его дочерних элементов.
Tree. Items[i].Count не даёт желаемого результата, так как Count - это количество дочерних элементов i-го узла, а если эти элементы имеют в свою очередь дочерние элементы, то они не принимаются в расчёт. Может есть какой известный алгоритм для подсчёта этих элементов, тогда киньте ссылочку, или текст.  
Заранее всем благодарен!


 
aleshap   (2004-10-16 16:48) [1]

алгоритм есть - называется от рекурсивный метод.


 
Dionnis   (2004-10-16 16:59) [2]

Спасибо конечно за подсказку, но то что он рекурсивный это понятно 8-), а поконкретнее нельзя?


 
begin...end ©   (2004-10-16 17:13) [3]

Вроде так, насколько я понимаю:

функция ЧислоДочернихЭлементов(НомерУзла: Integer): Integer;
переменные
 Количество, Индекс: Integer;
начало
 Результат := 0;
 Количество := Items[НомерУзла].Count;
 если Количество = 0 тогда
   Результат := Количество
 иначе
   для Индекс := 0 до Количество - 1 делаем
     Увеличить(Результат, ЧислоДочернихЭлементов(Индекс))
конец.


 
Dionnis   (2004-10-16 17:22) [4]

Спасибо большое!!! 8-)



Страницы: 1 вся ветка

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

Наверх





Память: 0.45 MB
Время: 0.035 c
3-1096897477
sloug
2004-10-04 17:44
2004.10.31
TDBRichEdit ошибка


3-1096989833
Святослав
2004-10-05 19:23
2004.10.31
Firebird + IBX .. Помогите, plz.


14-1097200407
Думкин
2004-10-08 05:53
2004.10.31
С днем рождения! 8 октября


14-1097462848
Kair()
2004-10-11 06:47
2004.10.31
HDD


3-1096917724
GanibalLector
2004-10-04 23:22
2004.10.31
тяжелое условие в ХП





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский