一尘不染

如何找到覆盖有向循环图中所有节点的最短路径?

algorithm

我需要一个有向循环图从一个节点的最短路径的示例(它应该从将作为输入的节点到达图的所有节点)。

如果有示例,请在C ++或算法中使用。


阅读 275

收藏
2020-07-28

共1个答案

一尘不染

编辑:糟糕,误读了问题。感谢@jfclavette接过。老答案在最后。

您要解决的问题称为旅行商问题。有许多潜在的解决方案,但是它是NP完全的,因此您将无法求解大型图形。

旧答案:

您要查找的内容称为图形的周长。可以通过将节点到自身的距离设置为无穷远并使用Floyd-
Warshall
算法来解决。那么,从节点i开始的最短周期的长度就是位置ii中的条目。

2020-07-28