已采納回答 / 晴天cloude
廣度優(yōu)先遍歷是一層一層的遍歷,同層節(jié)點(diǎn)之間的輸出順序與矩陣的排列有關(guān),也就是和一開(kāi)始節(jié)點(diǎn)的輸入順序有關(guān),但是同層節(jié)點(diǎn)的輸出順序并不是廣度優(yōu)先搜索的重點(diǎn)。當(dāng)然要是非按照固定的一種順序,在輸入節(jié)點(diǎn)的代碼上寫(xiě)個(gè)排序就行了。
2018-08-12
已采納回答 / qq_191_0
這個(gè)等式表明兩個(gè)結(jié)點(diǎn)位于同一集合里。這能夠得到這兩個(gè)結(jié)點(diǎn)可以通過(guò)其他結(jié)點(diǎn)相連的結(jié)論,所以如果A,B再直接相連便會(huì)形成閉環(huán)
已采納回答 / 幕布斯9075980
void CMap::kruskalTree(){ int value = 0; int edgeCount = 0; vector<vector<int>> nodeSets; //之前一直顯示vector subscript out of range,這是因?yàn)楹竺娉霈F(xiàn)對(duì)vector直接取vec[]的語(yǔ)句,這是不對(duì)的 //因?yàn)関ector沒(méi)有分配空間,我在這里分配空間后就可以了。 nodeSets.resize(m_iCapacity*m_iCapacity); vector&l...
已采納回答 / 風(fēng)憶夢(mèng)
每個(gè)函數(shù)結(jié)束時(shí),會(huì)使用模板vector的析構(gòu)函數(shù)自動(dòng)釋放內(nèi)存
2018-03-26
已采納回答 / xk今天要改名了
你這個(gè)假設(shè)就是b只和a相連,對(duì)b來(lái)說(shuō)確實(shí)結(jié)束了,但是和a相連的別的節(jié)點(diǎn)沒(méi)有結(jié)束啊,會(huì)繼續(xù)遍歷。
2017-08-31
已采納回答 / SiO
從報(bào)錯(cuò)信息上看是容器下標(biāo)越界的意思就是說(shuō)你容器的區(qū)間傳入了錯(cuò)誤的值或大或小。隨后檢查了代碼在75行處nodeSets[nodeBInSetLabel].push_back(nodeBIndex);下標(biāo)處應(yīng)該是nodeAInSetLabel 修改看看可否解決問(wèn)題。
已采納回答 / 慕娘9255957
應(yīng)該是要有的,因?yàn)槁暶鞯墓?jié)點(diǎn)是存放在開(kāi)辟出的有固定容量的數(shù)組中,所以在添加節(jié)點(diǎn)時(shí)是需要判斷節(jié)點(diǎn)數(shù)組是否已滿(mǎn)。而實(shí)際實(shí)現(xiàn),可以將m_iNodeCount與m_iCapacity進(jìn)行比較,如果相等就return false。
2017-04-12
已采納回答 / Kasumi_chan
while(edgeCount<m_iCapacity-1)//邊數(shù)小于m_iCapacity-1則一直要循環(huán)?????{????????int?temp=?nodeVec.back();//取出nodeIndex,back()函數(shù)是取當(dāng)前數(shù)組中尾部的元素????????for(int?i=0;i<=m_iCapacity;i++)這里for循環(huán)中是i < m_iCapacity,多了個(gè)=號(hào)
已采納回答 / Object_is_null
給Edge構(gòu)造函數(shù)中的參數(shù)提供默認(rèn)值,比如=0,就可以成為默認(rèn)構(gòu)造函數(shù)了
已采納回答 / 一束會(huì)飛的光
因?yàn)榻酉聛?lái)我們要在創(chuàng)造邊的時(shí)候,需要傳入上一頂點(diǎn)索引和下一頂點(diǎn)索引還有權(quán)值,如果只用初始值是不能說(shuō)明這條邊的作用,所以需要用這些賦值語(yǔ)句。
+ 我來(lái)回答
回答最高可+2積分
已采納回答 / 開(kāi)_開(kāi)
是不是有個(gè)默認(rèn)的復(fù)制構(gòu)造函數(shù)?