Re: Дейкстра - много точек?
От: What Беларусь  
Дата: 16.08.05 10:44
Оценка:
Здравствуйте, BreQwaS, Вы писали:

BQS>На графе дано: старт, финиш, промежуточные точки.

BQS>Нужно: найти кратчайший маршрут из старта в финиш, включающий в себя (в любом порядке) каждую из промежуточных точек.

BQS>Есть ли хороший алгоритм для решения такой задачки?

Думаю, что полиномиального алгоритма от количества промежуточных точек нет.
Запускаем алгоритм Флойда и находим кратчайшие пути между всеми парами точек. Дальше строим граф, состоящий из точки старта, финиша и промежуточных точек. Длина ребра в новом графе — кратчайшее расстояние между соответсвующими точками. Получили задачу коммивояжёра.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.