加权无向图中的最长路径

时间:2019-03-04 07:36:57

标签: algorithm graph graph-algorithm

My graph:

我需要根据边缘权重找到图中的最长路径。对于图像上的图形,它应该为4,5,3,2,1(顺序无关紧要)解决此问题的最佳算法是什么?如果您知道图形中的每个节点都有一个对图形中其他节点的引用(边),该怎么办。应该更改算法吗?

2 个答案:

答案 0 :(得分:1)

  • 最长路径问题是NP-complete,这意味着cannot be solved in polynomial time
  • 对于有向无环图,它具有线性解决方案,但是由于该问题与无向图有关,因此将无法使用。
  • 一种“有效” 解决方案可以是通过 depth-first 顺序遍历多次来简单地强力图形生成从A到B的所有可能路径。生成所有路径后,找到距离最大的路径。

答案 1 :(得分:0)

在图中找到最长路径是一个NP完全问题。与普遍的看法相反,这并不意味着它不能在多项式时间内解决(实际上,这是计算机科学P vs NP中尚未解决的重大问题之一)。但是,这确实意味着它至少与NP中最困难的问题一样困难。换句话说,可能有一种有效的算法可以解决此问题,但是到目前为止,还没有人能够找到它。实际上,不可能有效解决。知道每个节点相对于其他每个节点都有优势并不能改变这个问题是NP完全的事实。