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

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

Floyd算法

2019-11-11 07:21:36
字體:
來源:轉載
供稿:網友
/*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;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 和平县| 新乐市| 莆田市| 谷城县| 西昌市| 普陀区| 乐山市| 鄢陵县| 苍南县| 峨山| 安泽县| 蒲江县| 东源县| 长丰县| 肃南| 右玉县| 平阴县| 鄂托克前旗| 怀仁县| 开阳县| 凤翔县| 遵义县| 全椒县| 上栗县| 西乡县| 天等县| 长子县| 金塔县| 昌江| 通城县| 宁都县| 页游| 太康县| 获嘉县| 梓潼县| 张掖市| 内黄县| 泗洪县| 垫江县| 宜兰市| 贡嘎县|