DataStructures/Trees/AVLTree.php 1 location
|
@@ 64-70 (lines=7) @@
|
| 61 |
|
*/ |
| 62 |
|
private function leftRotation(AVLNode $node) { |
| 63 |
|
$temp = &$node->right; |
| 64 |
|
if($node->parent !== null) { |
| 65 |
|
if($node->parent->right === $node) { |
| 66 |
|
$node->parent->right = &$node; |
| 67 |
|
} else { |
| 68 |
|
$node->parent->left = &$node; |
| 69 |
|
} |
| 70 |
|
} |
| 71 |
|
$temp->parent = &$node->parent; |
| 72 |
|
$node->parent = &$temp; |
| 73 |
|
$node->right = $temp->left; |
DataStructures/Trees/BinaryTreeAbstract.php 1 location
|
@@ 369-373 (lines=5) @@
|
| 366 |
|
protected function replace(&$nodeToReplace, &$newNode) { |
| 367 |
|
if($nodeToReplace->parent === null) { |
| 368 |
|
$this->root = &$newNode; |
| 369 |
|
} else if($nodeToReplace === $nodeToReplace->parent->left) { |
| 370 |
|
$nodeToReplace->parent->left = &$newNode; |
| 371 |
|
} else if($nodeToReplace === $nodeToReplace->parent->right) { |
| 372 |
|
$nodeToReplace->parent->right = &$newNode; |
| 373 |
|
} |
| 374 |
|
|
| 375 |
|
if($newNode !== null) { |
| 376 |
|
$newNode->parent = &$nodeToReplace->parent; |