我知道NP-HARD中存在以下问题:给定一个简单的图G =(V,E),V中的两个顶点v,v',一个整数B和一个非负长度函数len:E - > Z +,是否有从v到v'的简单路径,长度小于B?
我的问题是:给定与以前相同的条件,如果我们有兴趣在从顶点v到v'的G中找到最长的不一定简单的路径,那么问题仍然存在于NP-HARD中?
注意:我试图减少哈密尔顿路径,但我仍然无法证明是否 NP中的问题可以简化为我提到的这个问题。我也抬头看了Garey&约翰逊,但我没有找到任何东西。
我想请一点提示来证明这个问题是否是NP-HARD。 提前谢谢!
答案 0 :(得分:1)
不,这不是NP难的;您可以使用最短路径算法(如Bellman-Ford)通过否定边长来在多项式时间内求解。请注意,最长路径可能是无限的,特别是当所有边权重都是非负的时。
答案 1 :(得分:1)
没有负循环的图中最短的简单路径不是NP难的。参见Cormen的“算法导论”。它可以使用Bellman-Ford算法解决。如果我们没有负边缘权重,也可以使用Dijkstra算法。两者都计算从单个源到图的所有其他节点的所有最短路径。因此,正如我所理解的那样,你的第一个问题不是NP难的。
最长的简单路径问题,假设没有正循环,是最短简单路径问题的双重问题,没有负循环。也不是NP难。
允许负循环的最短(非简单)路径是NP难的,因为您需要记住节点的所有可能路径,并且这可能是指数的。同样应该适用于允许正循环的最长(非简单)路径问题。
我希望能回答你的问题。
如果我遗漏了任何内容或任何陈述错误,请随时纠正我。