图论最短路:Floyd

多源最短路的处理方法,主要思想为dp;

时间复杂度O(n^3);

a[i][j]:邻接矩阵储存图;

dp[i][j]:从i点到j点的最短距离;

转移方程: 选取k点,dp[i][j]=min(dp[i][k]+dp[k][j],dp[i][j]);

直接贴核心代码:

1 for (int k=1;k<=n;k++)
2        for (int i=1;i<=n;i++)
3           for (int j=1;j<=n;j++)
4           dp[i][j]=min(dp[i][k]+dp[k][j],dp[i][j]);
View Code

最简单的最短路算法