поиск всех путей
От: S_Nawa  
Дата: 22.03.07 16:57
Оценка:
Задача состоит в поиске всевозможных путей в циклическом графе от A до B.
Заранее благодарю за помощь
Re: поиск всех путей
От: twisted_mind  
Дата: 22.03.07 17:10
Оценка:
S_N>Задача состоит в поиске всевозможных путей в циклическом графе от A до B.
S_N>Заранее благодарю за помощь

Если всё-таки речь идет об ациклическом орграфе, то можно начать с вершины A и поиском в ширину/глубину пометить все вершины, достижимые из A. Потом, начиная из B, идем из текущей вершины по обратным ребрам во все вершины, достижимые из A. Так перебираем все пути (только в обратном порядке обхода), причем, очевидно, различные, и только их.
Re: поиск всех путей
От: xtile  
Дата: 22.03.07 18:11
Оценка:
Здравствуйте, S_Nawa, Вы писали:

S_N>Задача состоит в поиске всевозможных путей в циклическом графе от A до B.

S_N>Заранее благодарю за помощь

С трудом себе представляю это в _циклическом_ графе. А в ациклическом — поиск в ширину до победы ( пока на очередном шаге некуда прийти, или все пути пришли в B )
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: поиск всех путей
От: kost-BebiX Украина http://fedorastones.blogspot.com
Дата: 23.03.07 00:14
Оценка:
Здравствуйте, xtile, Вы писали:

X>Здравствуйте, S_Nawa, Вы писали:


S_N>>Задача состоит в поиске всевозможных путей в циклическом графе от A до B.

S_N>>Заранее благодарю за помощь

X>С трудом себе представляю это в _циклическом_ графе. А в ациклическом — поиск в ширину до победы ( пока на очередном шаге некуда прийти, или все пути пришли в B )


Просто заводим массив с номерами вершин, которые мы уже достигли. И если следующая вершина уже была достигнута когда-либо — сравниваем два пути (подымаясь вверх по дереву) и оставляем лишь более оптимальный.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Если программист в рабочее время играет, значит —
либо у него мало работы и большая зарплата,
либо у него много работы и маленькая зарплата.
Re[2]: поиск всех путей
От: Au1  
Дата: 25.03.07 17:19
Оценка:
Здравствуйте, twisted_mind, Вы писали:

S_N>>Задача состоит в поиске всевозможных путей в циклическом графе от A до B.

S_N>>Заранее благодарю за помощь

_>Если всё-таки речь идет об ациклическом орграфе, то можно начать с вершины A и поиском в ширину/глубину пометить все вершины, достижимые из A. Потом, начиная из B, идем из текущей вершины по обратным ребрам во все вершины, достижимые из A. Так перебираем все пути (только в обратном порядке обхода), причем, очевидно, различные, и только их.


В ациклическом (дереве) путь, очевидно, единственный, если существует.
Re[3]: поиск всех путей
От: WolfHound  
Дата: 25.03.07 19:07
Оценка:
Здравствуйте, Au1, Вы писали:

Au1>В ациклическом (дереве) путь, очевидно, единственный, если существует.

Ацикличный граф не всегда дерево.
... << RSDN@Home 1.2.0 alpha rev. 673>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re: поиск всех путей
От: Nikolaus Россия  
Дата: 29.03.07 06:42
Оценка:
Здравствуйте, S_Nawa, Вы писали:

S_N>Задача состоит в поиске всевозможных путей в циклическом графе от A до B.

S_N>Заранее благодарю за помощь
Возможно только при наложении ограничений на количество проходов по одной дуге/одной вержине.
Просто идешь рекурсивно из старта, каждый раз перебирая все возможные выходы из вершины.
+ заводишь массивы счетчиков прохождений для дуг/вершин.
... << Rsdn@Home 1.1.4 beta 1 >>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.