最新回答 / 慕神6053403
醉了,我怎么直接看的kruskal
最新回答 / 董瘦瘦
這是克魯斯卡爾算法的原理啊在鄰接矩陣?yán)锶〕鏊羞吅笳页鲎钚∵呑钚∵厡?duì)應(yīng)的點(diǎn)不在集合中則添加進(jìn)去一個(gè)在的話則把另一個(gè)添加到該點(diǎn)集合中兩個(gè)都在同一個(gè)點(diǎn)集合中,只能拋棄這條邊,為什么呢?因?yàn)闀?huì)形成回環(huán)。例如:有一個(gè)點(diǎn)集合為{A,B,C},要找的邊為AC,對(duì)應(yīng)兩個(gè)點(diǎn)都在,再選AC這條邊的話A-B,B-C,A-C就形成回環(huán),所以在程序里continue跳過兩個(gè)點(diǎn)在不同的點(diǎn)集合中,說明這兩個(gè)點(diǎn)集合代表的邊可以通過當(dāng)前這條邊連接起來,對(duì)應(yīng)程序里的處理就是拼接兩個(gè)vector
最新回答 / 國寶阿寶
想明白了。應(yīng)該以“這一層”和“下一層”的說法來說好理解一些,畢竟以“上一層”來說,是以正在查找的和preVec里的節(jié)點(diǎn)有連接的節(jié)點(diǎn)所構(gòu)成的一層節(jié)點(diǎn)為參照點(diǎn),然而這一層節(jié)點(diǎn)是不一定有的。
2019-08-15
最新回答 / 夜木凝冰
????按道理講,創(chuàng)建動(dòng)態(tài)分配的數(shù)組時(shí)是不可以初始化的,只能在后續(xù)將其所有元素逐一設(shè)置為零。????所以,在構(gòu)造函數(shù)中創(chuàng)建完矩陣數(shù)組后,是需要給數(shù)組全部元素賦值為零的。否則就是隨機(jī)數(shù)。????有個(gè)便捷函數(shù)是:memset(m_pMatrix, 0, m_iCapacity *m_iCapacity * sizeof(int));。教程里面也有的。
2019-08-08
最新回答 / 木木暮
你的意思是在for (int i = 0; i < m_iCapacity; i++)前用?m_pNodeArray[temp].m_bIsVisited?=?true;嗎?這樣效果是一樣的,當(dāng)把點(diǎn)放進(jìn)去時(shí)就已經(jīng)用到了,等下加下一個(gè)的時(shí)候才設(shè)置為已訪問有點(diǎn)說不過去
2019-07-27
最新回答 / 慕斯卡4155732
想通了,遞歸調(diào)用實(shí)際上是一個(gè)嵌套循環(huán),它需要一層一層的從內(nèi)將每一個(gè)for循環(huán)執(zhí)行完再跳出當(dāng)前循環(huán),直到跳到第一個(gè)for循環(huán),并繼續(xù)執(zhí)行下去。這個(gè)時(shí)候nodeIndex=0,i=2,再在第一行尋找下一個(gè)點(diǎn)即D
2018-12-31