[英]non-binary tree using recursion is not creating entire tree
我有一個簡單的函數以遞歸方式構建字符串樹。 該函數被賦予字符串“ ***”,結果樹應如下所示:
***
/ | \
X** *X* **X
/ \ / \ / \
XX* X*X XX* *XX X*X *XX
/ \ / \ / \
XXX XXX XXX XXX XXX XXX
問題是我的函數僅創建樹的最左側(X **,XX *,XXX)
這是函數:
//Takes in the string "***"
void buildTree(string tree){
if (tree == "XXX") return;
else{
string newTree;
for (int i=0; i<tree.size(); i++){
if(tree[i] == '*'){
newTree = tree;
newTree[i] = 'X';
cout << newTree << endl;
return buildTree(newTree);
}
}
}
}
從“ return buildTree(newTree);”中刪除“ return”; 而且你應該很好走。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.