亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

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

SPFA算法

2019-11-14 08:53:51
字體:
來源:轉載
供稿:網友
/*由于Bellman-Ford算法的每輪操作都需要操作所有的邊,顯然這其中會有大量無意義的操作,嚴重影響了算法的性能。于是注意到,只有當某個頂點u的d[u]值改變時,從它出發的邊的鄰接點v的d[v]值才有可能改變。由此可以進行一個優化:建立一個隊列,每次將隊首頂點取出,然后對從u出發的所有邊u->v進行松弛操作,也就是判斷d[u]+length[u->v]<d[v]是否成立,如果成立,則用d[u]+length[u->v]覆蓋d[v],于是d[v]獲得更優的值,此時如果v不在隊列中,就把v加入隊列。這樣操作直到隊列為空(說明圖中沒有從源點可達的負環),或某個頂點的入隊次數超過V-1(說明圖中存在從原點可達的負環)。以下是偽代碼:queue<int> Q;源點s入隊;while(隊列非空){	取出隊首元素u;	for(u的所有鄰接邊u->v)	{		if(d[u]+dis<d[v])		{			d[v] = d[u] + dis;			if(v當前不在隊列)			{				v入隊;				if(v入隊次數大于n-1)				{					說明有可達負環,return;				}			}		}	}}這種優化后的算法被稱為SPFA(Shortest Path Faster Algorithm),期望時間復雜度為O(kE),k為常數,很多情況下不超過2,經常性優于堆優化的Dijkstra算法。若原圖中存在從源點可達的負環則SPFA的時間復雜度會退化成O(VE)。*///下面是鄰接表形式的圖的SPFA代碼#include<vector>#include<queue>#include<algorithm>using namespace std;const int MAXV = 1000;const int INF = 1000000000;struct Node{	int v, dis;};vector<Node> Adj[MAXV];//圖G的鄰接表int n, d[MAXV], num[MAXV];//num數組記錄頂點的入隊次數bool inq[MAXV];//頂點是否在隊列中bool SPFA(int s){	//初始化部分	memset(inq, false, sizeof(inq));	memset(num, 0, sizeof(num));	fill(d, d + MAXV, INF);	//源點入隊部分	queue<int>Q;	Q.push(s);//源點入隊	inq[s] = true;//源點已入隊	num[s]++;//源點入隊次數加1	d[s] = 0;//源點的d值為0	//主體部分	while (!Q.empty())	{		int u = Q.front();//隊首頂點編號為u		Q.pop();//出隊		inq[u] = false;//設置u為不在隊列中		//遍歷u的所有鄰接邊v		for (int j = 0; j < Adj[u].size(); j++)		{			int v = Adj[u][j].v;			int dis = Adj[u][j].dis;			//松弛操作			if(d[u]+dis<d[v])			{				d[v] = d[u] + dis;				if (!inq[v])//如果v不在隊列中				{					Q.push(v);//v入隊					inq[v] = true;//設置v為在隊列中					num[v]++;//v的入隊次數加1					if (num[v] >= n) return false;//有可達負環				}			}		}	}	return true;//無可達環}/*注意上述SPFA代碼是BFS版本,當然也可以將隊列換成棧以實現DFS版本的SPFA,對判環有奇效。還有,可以將隊列換成優先隊列以加快速度。當然還可以換成deque(雙端隊列),使用SLF或LLL優化。SPFA算法有兩個優化算法 SLF 和 LLL: SLF:Small Label First 策略,設要加入的節點是j,隊首元素為i,若dist(j)<dist(i),則將j插入隊首,否則插入隊尾。 LLL:Large Label Last 策略,設隊首元素為i,隊列中所有dist值的平均值為x,若dist(i)>x則將i插入到隊尾,查找下一元素,直到找到某一i使得dist(i)<=x,則將i出對進行松弛操作。SLF 可使速度提高 15 ~ 20%;SLF + LLL 可提高約 50%。在實際的應用中SPFA的算法時間效率不是很穩定,為了避免最壞情況的出現,通常使用效率更加穩定的Dijkstra算法。*/
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
精品国产自在精品国产浪潮| 日韩精品在线第一页| 亚洲最大的成人网| 亚洲影院色无极综合| 在线观看欧美日韩| 日韩一中文字幕| 91av免费观看91av精品在线| 大荫蒂欧美视频另类xxxx| 久久久久成人精品| 一区二区三区四区精品| 成人中文字幕+乱码+中文字幕| 久久成人av网站| 亚洲人成网在线播放| 国产精品电影在线观看| 精品一区二区亚洲| 精品久久久久久| 亚洲精品福利在线观看| 久久久久久久一区二区三区| 久久久精品电影| 日韩精品高清在线| 国语自产在线不卡| 日韩欧美在线一区| 88国产精品欧美一区二区三区| 亚洲精品中文字幕av| 中文字幕日韩欧美在线| 国产精品久久久久久久久久免费| 欧洲亚洲女同hd| 欧美怡红院视频一区二区三区| 亚洲级视频在线观看免费1级| 亚洲第五色综合网| 国产女同一区二区| 欧美理论片在线观看| 欧美极品美女视频网站在线观看免费| 欧美日韩国产综合视频在线观看中文| 热99精品里视频精品| 97国产精品免费视频| 国内免费精品永久在线视频| 成人黄色av网站| 欧美精品videosex牲欧美| 国产一区二区激情| 亚洲人a成www在线影院| 一区二区三区日韩在线| 97超碰蝌蚪网人人做人人爽| 亚洲精品美女在线观看| 久久久久日韩精品久久久男男| 国产精品最新在线观看| 91高潮精品免费porn| 国产欧美日韩视频| 亚洲欧洲在线观看| 亚洲午夜av电影| 欧美超级免费视 在线| 欧美另类99xxxxx| 亚洲乱码一区av黑人高潮| 欧美性精品220| 国产在线999| 国产精品久久久久久久久借妻| 日韩av网站导航| 色妞色视频一区二区三区四区| 国产精品久久久久久影视| 欧美激情国产日韩精品一区18| 成人午夜激情网| 欧美精品videos性欧美| 国产自摸综合网| 欧美巨大黑人极品精男| 琪琪第一精品导航| 在线观看久久av| 日韩一区av在线| 亚洲色图综合网| 欧美老肥婆性猛交视频| 亚洲人成绝费网站色www| 日韩精品免费综合视频在线播放| 51色欧美片视频在线观看| 欧美肥老太性生活视频| 日本精品视频在线观看| 91在线免费网站| 日本精品一区二区三区在线播放视频| 日韩精品免费一线在线观看| 日韩在线观看免费高清| 中文字幕亚洲综合久久筱田步美| 欧美制服第一页| 中文字幕国产精品久久| 狠狠躁天天躁日日躁欧美| 九九精品在线视频| 亚洲一区二区三区乱码aⅴ| 亚洲精品98久久久久久中文字幕| 国产成人精品久久亚洲高清不卡| 亚洲人成网站免费播放| 北条麻妃一区二区在线观看| 国产亚洲精品久久久久久| 亚洲欧美福利视频| 亚洲高清久久网| 2018国产精品视频| 久久久久国产精品免费| 亚洲国模精品私拍| 成人有码在线视频| 久久6免费高清热精品| 国产精品久久久av| 欧美专区在线播放| 国产亚洲精品美女久久久久| 成人黄色av免费在线观看| 欧美性xxxx极品高清hd直播| 91久久精品美女高潮| 亚洲欧美国产日韩中文字幕| 久热国产精品视频| 另类专区欧美制服同性| 欧美午夜片欧美片在线观看| 欧美激情国内偷拍| 亚洲人成电影网站色| 成人信息集中地欧美| 欧美日韩国产第一页| 日韩女在线观看| 久久精品国产免费观看| 69久久夜色精品国产69| 亚洲情综合五月天| 日韩成人免费视频| 国产精品久久久久久中文字| 中文字幕av一区二区三区谷原希美| 91热精品视频| 国产日韩欧美91| 欧美日本在线视频中文字字幕| 国产一区私人高清影院| 精品久久中文字幕久久av| 欧美性生活大片免费观看网址| 91亚洲精华国产精华| 九九久久久久久久久激情| 九九综合九九综合| 中文字幕日韩av综合精品| 成人黄色免费网站在线观看| 狠狠躁18三区二区一区| 中文字幕免费精品一区高清| 亚洲激情免费观看| 亚洲精品日韩欧美| 国产精品久久婷婷六月丁香| 97在线视频免费播放| 日韩精品中文字幕视频在线| 日韩激情视频在线播放| 色伦专区97中文字幕| 日韩av电影免费观看高清| 日韩欧美国产高清91| 亚洲变态欧美另类捆绑| 亚洲最大的免费| 久久久久久伊人| 懂色av一区二区三区| 成人自拍性视频| 亚洲高清不卡av| 欧美日韩加勒比精品一区| 亚洲国产精品成人精品| 在线成人激情视频| 国产91色在线| 国产精品入口尤物| 日韩电影中文 亚洲精品乱码| 亚洲国产精品大全| 国产精品欧美日韩久久| 国产精品久久婷婷六月丁香| 国产欧美精品一区二区三区-老狼| 久久久国产一区二区| 亚洲免费人成在线视频观看| 国产精品自产拍在线观看中文| 欧美精品在线第一页| 亚洲国产精品va在线看黑人动漫| 成人黄色大片在线免费观看| 日韩美女在线观看一区| 日韩不卡中文字幕| 日韩精品中文字幕在线播放|