图的点对最短路径算法(C++实现)

来源:互联网 发布:祝铭震cuba数据 编辑:程序博客网 时间:2024/06/06 02:15

图的点对最短路径算法:运用了动态规划的思想

设图Gn 个顶点的编号为1n。令c (i, j, k)表示从i j 的最短路径的长度,其中k 表示该路径中的最大顶点。因此,如果G中包含边<i, j>,则c(i, j, 0) =<i, j> 的长度;若i= j ,则c(i,j, 0)=0;如果G中不包含边<i, j>,则c (i, j, 0)= +∞。c(i, j, n) 则是从i j 的最短路径的长度。

 

图的点对最短路径的动态规划递归方程:c( i, j, k)= m i n {c(i, j, k-1), c (i, k, k- 1) +c (k, j, k- 1 ) }k0

原创粉丝点击