Самый дешевый обход стоимости на полном графике - PullRequest
1 голос
/ 04 августа 2011

Мне было интересно, есть ли алгоритм, который: учитывая полностью связанный граф из n-узлов (с разными весами) ... даст мне самый дешевый цикл для перехода от узла A (начального узла) ко всем остальным узлами вернуться к узлу A?Есть ли способ изменить алгоритм, такой как Primm, для достижения этой цели?

Спасибо за вашу помощь

РЕДАКТИРОВАТЬ: я забыл упомянуть, что я имею дело с неориентированным графом, так чтовыходной градус для каждой вершины.

Ответы [ 3 ]

0 голосов
/ 04 августа 2011
0 голосов
/ 04 августа 2011

Не должно быть никакого такого пути.Он существует тогда и только тогда, когда степень каждого узла равна его степени.

То, что вы хотите, это самый дешевый путь Эйлера.Проблема ее поиска называется Проблема коммивояжера .Не существует и не может быть быстрого алгоритма для его решения.

Редактировать : Вторая мысль: проблема коммивояжера ищет поиск, который посещает каждый узел ровно один раз.Вы просите тур, который посещает каждый узел хотя бы один раз.Таким образом, ваша проблема может быть просто в P. Я в этом сомневаюсь.

0 голосов
/ 04 августа 2011

Разве вы не можете изменить Dijkstra, чтобы найти вам кратчайший путь ко всем остальным узлам, а затем, когда вы его нашли, кратчайший путь обратно к A?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...