diff --git a/algorithm/search/rb_tree.md b/algorithm/search/rb_tree.md index 706ad8b..1f8c134 100644 --- a/algorithm/search/rb_tree.md +++ b/algorithm/search/rb_tree.md @@ -808,7 +808,7 @@ func (tree *RBTree) fixAfterDeletion(node *RBTNode) { } else { // 要删除的节点在父亲右边,对应图例3,4 // 找出兄弟 - brother := RightOf(ParentOf(node)) + brother := LeftOf(ParentOf(node)) // 兄弟是红色的,对应图例3,那么兄弟变黑,父亲变红,然后对父亲右旋,进入图例41,42,43 if IsRed(brother) { @@ -1102,7 +1102,7 @@ func (tree *RBTree) fixAfterDeletion(node *RBTNode) { } else { // 要删除的节点在父亲右边,对应图例3,4 // 找出兄弟 - brother := RightOf(ParentOf(node)) + brother := LeftOf(ParentOf(node)) // 兄弟是红色的,对应图例3,那么兄弟变黑,父亲变红,然后对父亲右旋,进入图例41,42,43 if IsRed(brother) { @@ -1682,7 +1682,7 @@ func (tree *RBTree) fixAfterDeletion(node *RBTNode) { } else { // 要删除的节点在父亲右边,对应图例3,4 // 找出兄弟 - brother := RightOf(ParentOf(node)) + brother := LeftOf(ParentOf(node)) // 兄弟是红色的,对应图例3,那么兄弟变黑,父亲变红,然后对父亲右旋,进入图例41,42,43 if IsRed(brother) { diff --git a/code/rbt/main.go b/code/rbt/main.go index c354e21..6a35742 100644 --- a/code/rbt/main.go +++ b/code/rbt/main.go @@ -383,7 +383,7 @@ func (tree *RBTree) fixAfterDeletion(node *RBTNode) { } else { // 要删除的节点在父亲右边,对应图例3,4 // 找出兄弟 - brother := RightOf(ParentOf(node)) + brother := LeftOf(ParentOf(node)) // 兄弟是红色的,对应图例3,那么兄弟变黑,父亲变红,然后对父亲右旋,进入图例41,42,43 if IsRed(brother) {