国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

圖的拓?fù)渑判?/h1>

這篇具有很好參考價(jià)值的文章主要介紹了圖的拓?fù)渑判?。希望?duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

????????拓?fù)渑判蚴且粋€(gè)有向無環(huán)圖(有向圖、弧不形成閉環(huán))的所有頂點(diǎn)的線性序列。該線性序列中,圖的每個(gè)頂點(diǎn)只出現(xiàn)一次,若頂點(diǎn)A到頂點(diǎn)B之間存在有向弧<v1,v2>,則頂點(diǎn)A一定在頂點(diǎn)B前面。

?

圖的拓?fù)渑判?圖,數(shù)據(jù)結(jié)構(gòu),圖論

?

????????圖的拓?fù)渑判驅(qū)崿F(xiàn)很簡單,基本操作思想:

? ? ? ? 1、開始時(shí)用一個(gè)輔助數(shù)組記錄各頂點(diǎn)的入度,入度為0的頂點(diǎn)全部入隊(duì)(先進(jìn)先出、輸入頂點(diǎn))

? ? ? ? 2、將入度為0的頂點(diǎn)逐個(gè)出隊(duì),出隊(duì)時(shí),將以他們?yōu)榛∥驳幕〉幕☆^的入度-1,若入度為0,則將弧頭入隊(duì)。重復(fù)入隊(duì)、出隊(duì),直到所有頂點(diǎn)出隊(duì)完。?

圖的拓?fù)渑判?圖,數(shù)據(jù)結(jié)構(gòu),圖論

? ? ? ? 圖中只有頂點(diǎn)A的入度為0,將頂點(diǎn)A入隊(duì);將A出隊(duì),同時(shí)減少以頂點(diǎn)A為弧尾的弧的弧頭(圖中為頂點(diǎn)2、頂點(diǎn)4)的入度。發(fā)現(xiàn)頂點(diǎn)2的入度為0,將頂點(diǎn)2入隊(duì)。如此重復(fù)入隊(duì)、出隊(duì),直到所有頂點(diǎn)輸出完。

圖的拓?fù)渑判?圖,數(shù)據(jù)結(jié)構(gòu),圖論

?

?

圖的拓?fù)渑判?圖,數(shù)據(jù)結(jié)構(gòu),圖論

?最終的到拓?fù)渑判蚪Y(jié)果:1、2、4、3、5(不唯一)文章來源地址http://www.zghlxwxcb.cn/news/detail-540370.html

// 無回路的有向圖
// 拓?fù)渑判?void TopologicaSort(ALGraph &graph) {
	int Degree[MAX_VERTEX_NUM];	// 記錄各頂點(diǎn)當(dāng)前的入度
	for (int i = 0; i < graph.ver_num; ++i) {
		Degree[i] = 0;
	}
	for (int i = 0; i < graph.ver_num; ++i) {
		ArcNode* T = graph.adj[i].first;
		while (T) {
			++Degree[T->adjIndex];	// 鄰接頂點(diǎn)入度+1
			T = T->Next;
		}
	}
	queue<verType> VERTEX;
	for (int i = 0; i < graph.ver_num; ++i) {
		if (0 == Degree[i]) {
			VERTEX.push(graph.adj[i].vertex);	// 入度為0的頂點(diǎn)入隊(duì)
			break;
		}
	}
	verType vex;
	int index;
	while (!VERTEX.empty()) {
		vex = VERTEX.front();
		VERTEX.pop();
		cout << vex << " ";
		index = LocateVertex(graph, vex);
		if (index < 0) break;
		ArcNode* T = graph.adj[index].first;
		while (T) {
			--Degree[T->adjIndex];
			if (0 == Degree[T->adjIndex]) VERTEX.push(graph.adj[T->adjIndex].vertex);
			T = T->Next;
		}
	}
	cout << endl;
}

到了這里,關(guān)于圖的拓?fù)渑判虻奈恼戮徒榻B完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包