Floyd 多源最短路径

主要思想

  • 多源最短路径
  • 向[i][j]中插入点k 如果可以更新 就更新

代码

const int max_n = 30;
const int INF = 0x3fffffff;
int n,G[max_n][max_n];
int d[max_n][max_n];//i到j的最短距离
void Floyd()
{
	for (int k = 0; k < n; k++)
	{
		for (int i = 0; i < n; i++)
		{
			for (int j = 0; j < n; j++)
			{
				if (d[i][k]!=INF&& d[k][j]!=INF&&d[i][j] > d[i][k] + d[k][j])
				{
					d[i][j] = d[i][k] + d[k][j];
				}
			}
		}
	}
}
posted @ 2021-09-06 19:36  小帆敲代码  阅读(21)  评论(0编辑  收藏  举报