国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Floyd算法

2019-11-11 06:09:23
字體:
來源:轉載
供稿:網友
/*Floyd算法(用于解決全源最短路問題)流程如下:枚舉頂點k∈[1,n]	以頂點k作為中介點,枚舉所有頂點對i和j(i∈[1,n],j∈[1,n])		如果dis[i][k]+dis[k][j]<dis[i][j]成立			賦值dis[i][j] = dis[i][k] + dis[k][j]*///下面是Floyd算法應用的代碼#include<cstdio>#include<algorithm>using namespace std;const int INF = 1000000000;const int MAXV = 200;//MAXV為最大頂點數int n, m;//n為頂點數,m為邊數int dis[MAXV][MAXV];//dis[i][j]表示頂點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 (dis[i][k] != INF&&dis[k][j] != INF					&&dis[i][k] + dis[k][j] < dis[i][j])					dis[i][j] = dis[i][k] + dis[k][j];//找到更短的路徑			}		}	}}int main(){	int u, v, w;	fill(dis[0], dis[0] + MAXV*MAXV, INF);//dis數組賦初值	scanf("%d%d", &n, &m);//頂點數n、邊數m	for (int i = 0; i < n; i++)	{		dis[i][i] = 0;//頂點i到頂點i的距離初始化為0	}	for (int i = 0; i < m; i++)	{		scanf("%d%d%d", &u, &v, &w);		dis[u][v] = w;//以有向圖為例進行輸入	}	Floyd();//Floyd算法入口	for (int i = 0; i < n; i++)//輸出dis數組	{		for (int j = 0; j < n; j++)		{			PRintf("%d ", dis[i][j]);		}		printf("/n");	}	return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 元谋县| 保康县| 浦江县| 宝兴县| 大渡口区| 湟源县| 河源市| 岳普湖县| 潍坊市| 杭州市| 盈江县| 保德县| 布尔津县| 肃南| 丹凤县| 涞水县| 收藏| 弥勒县| 稷山县| 海林市| 八宿县| 乐平市| 定州市| 马关县| 南投县| 沂南县| 慈利县| 庆阳市| 金平| 安泽县| 会宁县| 化德县| 苏州市| 贵南县| 武陟县| 宿迁市| 新巴尔虎右旗| 延庆县| 遵化市| 灌阳县| 邻水|