Explorar el Código

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

Natalie Pueyo hace 8 años
padre
commit
aeeb4bdbfa
Se han modificado 1 ficheros con 12 adiciones y 3 borrados
  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);