Главная страница
    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.038 c
14-1097501623
NeyroSpace
2004-10-11 17:33
2004.10.31
Поставил CDRWin v5.01.000 потом удалил и теперь на CD-RW диске


1-1098182137
Scraber
2004-10-19 14:35
2004.10.31
Обычная кпока - контрол


1-1098164127
atmospheric
2004-10-19 09:35
2004.10.31
Печать RTF из RichEdit на разных машинах?!


1-1098044136
dms_main
2004-10-18 00:15
2004.10.31
Консольное приложение


8-1091459942
Driver
2004-08-02 19:19
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский