我不明白这是怎么回事:
Node* BST::Minimum(Node *curr) {
if (curr->left != NULL) {
Minimum(curr->left);
}
return curr;
}
我的意思是我已经插入了罚款,打印机,inorderr,预订好。
我做傻事吗? 这只是打印根节点。
答案 0 :(得分:2)
你调用Minimum
并抛弃其返回值。你想要return Minimum(curr->left);
。
顺便说一句,我强烈建议迭代而不是递归地执行此操作,如下所示:
Node* node = curr;
while (node->left != NULL)
node = node->left;
return node;