求图中任意两点的最小距离:
Floyd关键代码
//关键算法
for(int k=1;k<=n;k++)
for(int i=1;i<=n;i++)
for(int j=1;i<=n;i++)
{
if(e[i][j] > e[i][k]+e[k][j])
e[i][j] = e[i][k]+e[k][j];
}
基本思想:最开始经过1号顶点中转,接下来只允许1,2中转,。。
最后允许经过1~n号点中转。