【发布时间】:2012-10-19 22:45:26
【问题描述】:
基本上,我需要在图中有一条最短路径,覆盖所有顶点并返回源。只要是最短路径,任何顶点都可以重复。
我的算法从源头开始。我运行 dijkstra 算法来找到最短路径。然后我选择最小的加权未到达顶点并再次运行 dijkstra 作为所选顶点作为源并继续执行直到所有顶点完成。然后从最后一个顶点再次使用 dijkstra 找到返回原始源的最短路径。
我试过了,但似乎失败了,我找不到原因。
【问题讨论】:
-
这个问题是 NP 完全问题,因为它提供了一个 hamiltonian cycle 如果存在的话。这样的周期确实是最小的。您需要确切的最小值吗?
-
看看en.wikipedia.org/wiki/Travelling_salesman_problem。您的问题是旅行商问题的一个轻松版本。