访问所有节点的最短路径

时间:2015-11-07 13:41:16

标签: algorithm graph path shortest-path

我正在寻找一种对我来说非常典型的算法,但似乎常见的解决方案都有点不同。

在无向图中,我想要访问每个节点的最短路径。可以重新访问节点,我不必返回到起始节点。

旅行商问题似乎添加了限制,即每个节点只能访问一次,并且路径必须返回到它开始的位置。

最小生成树可能是解决方案的一部分,但此类算法仅提供树,而不是最小路径。另外,因为它们是树,因此没有循环,它们会强制回溯,循环可能更有效。

1 个答案:

答案 0 :(得分:2)

您可以通过转换图表将其减少到正常的旅行商问题。

首先,计算每对节点的最小距离。你可以使用Floyd-Warshall算法。获得它之后,只需构建完整的图形,其中节点 u v 之间的边缘是 u v的最低成本

然后,您可以应用普通的TSP算法,因为您不再需要重新访问节点,这已经隐藏在边缘的成本中。