floyd算法 用于解决不含负权回路 所有源最短路问题
/floyd算法 用于解决不含负权回路 所有源最短路问题
//代码摘自《入门经典》
//每两点间最短路保存在 d[][] 中
//编号从0开始
/*begin*/
/*初始化
fr(i,0,n-1)fr(j,0,n-1){i!=j?d[i][j]=inf:d[i][j]=0;}
*/
int d[maxn][maxn]//以邻接表的形式输入 i , j 间距
const int inf=1<<30;//正无穷
const int maxn=1000;//点数
int n;
void floyd()
{
fr(k.0,n-1)
fr(i,0,n-1)
fr(j,0,n-1)
if(d[i][j]<inf&&d[k][j]<inf)
d[i][j]=min(d[i][j],d[i][k]+d[k][j]);
}
/*end*/