Поиск по дереву

MatriXakep 28.03.2004 - 14:12 | Как осуществлять поиск по дереву? (VC 6.0 support MFC) Поиск от 1-го элемента до последного. Просто необходимо получить дескриптор элемента по идентификатору (тип char*), содержащему в lParam элемента.
XPEH 1 - 29.03.2004 - 10:18 | Ну так иди по списку элементов (массив или что там применяется?) и сравнивай текст элемента с нужным текстом.
UE 2 - 29.03.2004 - 10:38 | Рекурсия, брат ;)
MatriXakep 3 - 29.03.2004 - 16:18 | Рекурсию уже использовал, ранее... брат UE :)) Дело в том, что я ранее использовал класс CPtrList для хранения структуры, где содержится информация определенного узла дерева. Структура { HTREEITEM hitem; //дескриптор дерева char id[6]; // идентификатор char parent_id[6];// идентификатор родителя char text[10]; //текст } Но когда дошел до удалении структур при удалении какого-либо узла дерева, (написал рекурсивную функцию удаления очередей в CPtrList) то начались выдавать ошибки , что стек переполнен. И я подумал, что в моей структуре много лишних переменных: тескт и дескриптор есть у самого узла, родитель могу получить через идетификатор - и все изменил, структуру удалил, CPtrList не использую, а только добавляю к lParam идентификатор (id). И даже рекрусивную ф-ию использовать не надо! НО остается проблема как провести поиск по дереву в поиске нужного ID`а. :((((( Или посоветуйте, как лучше: CPtrList или lParam(Tree Item Data).
sad без пароля 4 - 30.03.2004 - 09:55 | Вы бы сначала разобрались с _алгоритмами_ поиска..... - а то знаете ли шаманизм не всегда помогает да и слово "РЕКУРСИЯ" совсем не волшебное....
UE 5 - 30.03.2004 - 10:44 | Я бы предложил все-таки с каждым узелком связывать данные через treeitemdata. А для путешествия по дереву написал бы функцию с тремя аргументами: treeitem, указатель на callback-функцию (которой передается очередной treeitem и еще что-нибудь) и как раз это самое что-нибудь.
MatriXakep 6 - 30.03.2004 - 14:16 | >А для путешествия по дереву написал бы функцию с тремя аргументами: treeitem, указатель на callback-функцию (которой передается очередной treeitem и еще что-нибудь) и как раз это самое что-нибудь. Как это понять? >>>>sad без пароля ????
MatriXakep 7 - 30.03.2004 - 22:12 | Сделал с помощью добавления в память структур(CPtrList) и удаление через рекурсию. Работает!

>>