Forráskód Böngészése

Merge branch 'master' of https://github.com/epukaza/natalie_code

Natalie Pueyo 8 éve
szülő
commit
aeeb4bdbfa
1 módosított fájl, 12 hozzáadás és 3 törlés
  1. 12 3
      program3/AVLCommands.cpp

+ 12 - 3
program3/AVLCommands.cpp

@@ -365,10 +365,19 @@ int AVLCommands::DeleteMin(std::shared_ptr<BSTNode> currentNode) {
 	} else {
 		// lastNode under the root
 		if (lastNode->right_ != nullptr) {
-			parent->left_ = lastNode->right_;
-			lastNode->right_->parent_ = parent;
+			if (parent->left_ == lastNode){
+				parent->left_ = lastNode->right_;
+				lastNode->right_->parent_ = parent;
+			} else {
+				parent->right_ = lastNode->right_;
+				lastNode->right_->parent_ = parent;
+			}
 		} else {
-			parent->left_ = nullptr;
+			if (parent->left_ == lastNode){
+				parent->left_ = nullptr;
+			} else {
+				parent->right_ = nullptr;
+			}
 		}
   }
 	size_--; assert(size_ >= 0);