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

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

Floyd算法

2019-11-11 06:50:51
字體:
來源:轉載
供稿:網友
/*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;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 苏尼特右旗| 太白县| 明水县| 灵武市| 水富县| 乳山市| 衡南县| 进贤县| 南雄市| 锦州市| 大竹县| 依兰县| 花垣县| 石楼县| 三原县| 翁牛特旗| 康马县| 宁国市| 东源县| 惠来县| 枣阳市| 光山县| 龙泉市| 阿尔山市| 手游| 闵行区| 天水市| 道真| 商水县| 琼结县| 阿鲁科尔沁旗| 吴江市| 马关县| 云林县| 扶余县| 中超| 南和县| 宜宾市| 奉化市| 丹凤县| 通山县|