亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么我的廣度優先遍歷打出來是ABCDEFG還沒有H

//廣度優先遍歷 A B D C F G H E
void CMap::breadthFirstTraverse(int nodeIndex){
cout<<mpNodeArray[nodeIndex].mData <<" ";
mpNodeArray[nodeIndex].mvisited =true;
vector<int>curvec;
curvec.push_back(nodeIndex);
breadthFirstTraverseImp(curvec);
}
void CMap::breadthFirstTraverseImp(vector<int> preVec){
int value=0;
vector<int>curvec;//用來保存這一層所有結點
for(int j=0;j<(int)preVec.size() ;j++){//看上一層有多少結點
for(int i=0;i<miCapacity;i++){
getValueFromMatrix(preVec[i],i,value);
if(value!=0){
if(mpNodeArray[i].mvisited ) continue;
else{
cout<<mpNodeArray[i].mData <<" ";
mpNodeArray[i].mvisited =true;
curvec.push_back(i);
}
}
}
}
if(curvec.size() ==0) return;
else breadthFirstTraverseImp(curvec);
}
這是我的代碼,求幫忙。

正在回答

1 回答

getValueFromMatrix(preVec[i],i,value);

你這行代碼寫錯了。。。不是preVec[i],而是j

1 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么我的廣度優先遍歷打出來是ABCDEFG還沒有H

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號