Answers:
对于最短路径问题,如果我们不关心权重,那么广度优先搜索是一种肯定的方法。否则,只要没有负边缘,Dijkstra的算法就可以工作。
对于最长的路径,您可以始终在图上使用Bellman-Ford并忽略所有边缘权重。回想一下,只要没有负重量周期,Bellman-Ford就可以工作,因此可以在DAG上使用任何重量。
令和。令表示边缘的权重。假设您要查找从到的最小和最大路径开销。m = | E (G )| w (a → b )(a → b )s t
从,执行以下操作:
如果已经访问过,则返回已经计算出的和。否则,将标记为已访问。
如下确定并记录和。
您应该能够证明该算法在时间,而忽略了初始化所有顶点变量所需的时间。