LINUX.ORG.RU

Поиск пути в графе

 


0

2

Есть граф. Ребра направленные, имеют вес. Есть одна вершина - начало. И есть конечная вершина.

1. Необходимо построить покрытие графа от начало до конца: покрытие должно проходить через указанное заранее множество точек; вес покрытия должен быть минимален

2. Задачу можно упростить: есть множество точек начала и одна конца. Необходимо построить покрытие между всеми точками начала и конца.

3. Если брать полностью задачу, что стоит у меня, то: для любой вершины a может существовать множество других вершин В, таких что, если покрытие проходит через вершину a, то оно обязано проходить через ВСЕ вершины B

Есть идеи по стандартным алгоритмам?

★★★★

Последнее исправление: namezys (всего исправлений: 1)

2 — обычная задача поиска кратчайшего пути из одной точки во все остальные. Разворачиваешь направление ребёр, берёшь в качестве начальной точки ту, что в твоей задаче будет финальной и используешь алгоритм Беллмана–Форда или любой другой алгоритм для этой задачи.

kim-roader ★★
()
Ответ на: комментарий от kim-roader

спасибо. Гляну.

Ну надо понимать, что путь должен разветвлиться, ибо вернуться назад он не сможет

namezys ★★★★
() автор топика
Ответ на: комментарий от invy

все бы хорошо, но тут не остов графа. Надо пройти через некоторые вершины, но не через все. Но может удастся модифицировать

namezys ★★★★
() автор топика
Ответ на: комментарий от namezys

В общем случае могут быть задействованы и все вершины... если вес в сумме будет наименьший, не?

invy ★★★★★
()
Ответ на: комментарий от namezys

Решай задачу итеративно - в качестве начала и конца одной итерации используй предыдущую и следующую твою «обязательную» ноду графа.

blexey ★★★★★
()

Есть идеи по стандартным алгоритмам?

Многогранники, графы, оптимизация. ©

Фундаментальные алгоритмы на C++. Часть 5. Алгоритмы на графах. ©

quickquest ★★★★★
()

эээ.... мне одному нихрена не понятно? Что такое «покрытие от начала до конца»?

Waterlaz ★★★★★
()
Ответ на: комментарий от namezys

все бы хорошо, но тут не остов графа. Надо пройти через некоторые вершины, но не через все. Но может удастся модифицировать

Ну... это почти задача коммивояжера(задачу TSP можно свести к твоей) => NP-полнота во все поля.

Waterlaz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.