![]() |
|
![]() ![]() ![]() |
|
sapphiro |
|
|||
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 13.11.2006 Репутация: нет Всего: нет |
Че то вот я не знаю...
Как найти элемент в двоичном(бинарном) дереве я знаю: рекурсия налево, рекурсия направо - 2строчки. А как найти элемент в НЕдвоичном дереве (у которого может быть куча потомков одного уровня, т.е из элемента исходят не два, а от 0 до бесконечности), вроде как надо в цикле перебирать массив указателей или я ошибаюсь?? Подскажите че-нибудь...!!! см. рисунок дерева Это сообщение отредактировал(а) sapphiro - 20.5.2007, 21:10 Присоединённый файл ( Кол-во скачиваний: 16 ) ![]() |
|||
|
||||
Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 4 Всего: 27 |
Этож не дерево, а граф. Для поиска в графе есть волновой алгоритм. В тернете полно инфы по нему.
Например тут http://algolist.ncstu.ru/maths/graphs/shortpath/wave.php Правда, он предназначен для поиска кратчайшего пути, но основан на поиске пути к конкретному элементу графа. |
|||
|
||||
Lomir |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 58 Регистрация: 30.1.2007 Где: Lithuania::Kaunas Репутация: нет Всего: 1 |
Дерево это связанных граф без циклов и повторяющихся ребер. Так все же у вас дерево или просто граф? Если дерево, то копать в сторону биноминальных деревьев. Если граф, тогда... DFS наверное подойдет. |
|||
|
||||
sapphiro |
|
|||
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 13.11.2006 Репутация: нет Всего: нет |
Если б был граф, я бы написал, что это граф.... а это дерево
Оцените кто нить:
"DFS наверное подойдет" - если код имеется, я бы не отказался... ![]() Это сообщение отредактировал(а) sapphiro - 21.5.2007, 20:13 |
|||
|
||||
Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 4 Всего: 27 |
А чем Вы, sapphiro, обосновываете, что это дерево? У дерева должен быть корень, на который никто не ссылается. В Вашем случае все элементы имеют как исходящие, так и входящие ссылки, следовательното это граф, а значит и алгоритмы нужно применять графовые.
|
|||
|
||||
Lomir |
|
||||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 58 Регистрация: 30.1.2007 Где: Lithuania::Kaunas Репутация: нет Всего: 1 |
А дерево подчиняеться каким нибуть законам?
Если нет, тогда ДФС. Код обхода приблизительно такой (если списки не кольцевые):
Почему-то мне это очень похоже на биноминальные деревья\пирамиды ![]() |
||||||
|
|||||||
sapphiro |
|
|||
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 13.11.2006 Репутация: нет Всего: нет |
Изначально все было не так, просто в процессе думания смог переделать просто дерево под двоичное дерево...с ним полегче работать....вопросы еще будут
![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Алгоритмы" | |
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Алгоритмы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |