0
我想完成刪除功能。樹刪除節點
這裏是僞代碼,注意結尾:
我不知道的僞代碼是錯誤的,但。
這裏是我的解讀是:
Node* minNode = Minimum(toDelete->right);
int tmp = 0;
tmp = minNode->val;
// delete(&tmp);
free(minNode);
minNode=NULL;
toDelete->val=tmp;
除了一旦刪除它,它開始打印時填寫一萬億零。
我在做什麼是有道理的? 我擁有的其他代碼是正確的,或者我認爲無論如何。它只是在這種情況下搞砸了。
這裏的最低功能以及
Node* BST::Minimum(Node *curr) {
// if (curr->left != NULL) {
// return(Minimum(curr->left));
// }
// return curr;
Node* node = curr;
while (node->left != NULL) {
node = node->left;
}
return node;
}
但這是一棵二叉樹,而不是鏈表 –