Algorithm DAG中所有对之间的最长路径
我试图找到一个无环有向图中所有节点对之间的最长路径。我的问题是,如果我在邻接矩阵中设置以下初始条件,Floyyd Warshall会给出正确的答案吗Algorithm DAG中所有对之间的最长路径,algorithm,shortest-path,directed-acyclic-graphs,floyd-warshall,Algorithm,Shortest Path,Directed Acyclic Graphs,Floyd Warshall,我试图找到一个无环有向图中所有节点对之间的最长路径。我的问题是,如果我在邻接矩阵中设置以下初始条件,Floyyd Warshall会给出正确的答案吗 如果i=j,则调整[i][j]=0 调整[i][j]=-1*INF如果我=节点i和j之间没有边 Adj[i][j]=w[i][j]否则,其中w[i][j]是节点i和j之间的边的权重 边的权重可以是正的,也可以是负的。是的,Floyd Warshall可以为您的问题给出正确的答案,就像使用Floyd Warshall查找图中所有对之间的最短路径一样。
边的权重可以是正的,也可以是负的。是的,Floyd Warshall可以为您的问题给出正确的答案,就像使用Floyd Warshall查找图中所有对之间的最短路径一样。 或者,您可以将每条边与(-1)相乘,并解决您的问题,如查找所有对之间的最短路径,然后将结果与(-1)相乘
但是你可以对图形进行拓扑排序,然后使用动态规划进行计算,它的复杂性是max(| E |,| V |),而不是FW的| V | ^3。问题是什么?为什么不使用动态规划来代替呢?它在时间和空间复杂度方面更有效,而且它的正确性更容易证明(我不确定你的方法是否正确)。@user2040251是的,我可以,但我想知道上面的:)需要注意的是,这只适用于非循环图。如果这个图可能包含一个圈,那么这是一个NP难问题。