此link提到:
加权图中两个给定顶点s和t之间的最长路径 G与从G通过以下公式得出的图-G中的最短路径相同 改变每一个分量到它的否定。因此,如果路径最短 可以在-G中找到,然后最长的路径也可以在G中找到。
那么,如果这种转换可以将最长路径简化为最短路径问题,为什么为什么要找到最长路径呢?
转换后,我们遇到以下情况:
-G
具有负周期,在这种情况下,无法找到-G
中的最短路径-G
没有负周期,在这种情况下,Floy-Warshall或Bellman-Ford算法可以在多项式时间内找到-G
中的最短路径问题:
说没有负周期是否正确,找到最长路径的问题不是NP难的?
在存在负周期的情况下是否正确地说,节点之间仍然有最长的simple path
,难于找到NP?
如果是这样,那么说在图中找到最长的简单路径是否具有NP难度是否更准确?
如果是这样,是否由于-G
变换而说在图中找到最短的简单路径也是NP困难的?
修改
此链接更详细地解释了关于最长路径问题的困惑: https://hackernoon.com/shortest-and-longest-path-algorithms-job-interview-cheatsheet-2adc8e18869
答案 0 :(得分:2)
这里的困惑是最长路径问题通常要求最长的简单路径,即最长的路径,没有重复的顶点。因此,可以将其简化为哈密顿路径问题,该问题被称为NP难题。
另一方面,Bellman-Ford和类似的算法计算图形中的最短路径(注意:没有简单),即可以重复顶点。
您的四个问题:
-G
中存在负循环,则G
中根本没有最长的路径,因为您可以永远继续绕着循环行走。最长的simple
路径可能仍然存在,但是无论是否存在负循环,问题都可以归结为哈密顿路径,因此仍然是NP问题。答案 1 :(得分:0)