五大最短路径算法比较.docVIP

  • 3
  • 0
  • 约 3页
  • 2016-11-30 发布于安徽
  • 举报
五大最短路径算法比较.doc

五大最短路径算法比较 July、二零一一年二月十二日。 本文参考:维基百科。 -----------------------------------? 几个最短路径算法的比较: ??I、Floyd:求多源、无负权边的最短路。用矩阵记录图。时效性较差,时间复杂度O(V^3)。 ? Floyd-Warshall算法(Floyd-Warshall algorithm)是解决任意两点间的最短路径的一种算法, 可以正确处理有向图或负权的最短路径问题。 Floyd-Warshall算法的时间复杂度为O(N^3),空间复杂度为O(N^2)。 Floyd-Warshall的原理是动态规划: 设Di,j,k为从i到j的只以(1..k)集合中的节点为中间节点的最短路径的长度。 若最短路径经过点k,则Di,j,k = Di,k,k-1 + Dk,j,k-1;? 若最短路径不经过点k,则Di,j,k = Di,j,k-1。? 因此,Di,j,k = min(Di,k,k-1 + Dk,j,k-1 , Di,j,k-1)。 在实际算法中,为了节约空间,可以直接在原来空间上进行迭代,这样空间可降至二维。 Floyd-Warshall算法的描述如下: for k ← 1 to n do ? for i ← 1 to n do ??? for j ← 1 to n do ????? if (Di,k + Dk,j

文档评论(0)

1亿VIP精品文档

相关文档