auto commit
This commit is contained in:
parent
5633d636ee
commit
06a8653f87
|
@ -1215,7 +1215,7 @@ private void keys(Node x, Queue<Key> queue, Key lo, Key hi) {
|
|||
|
||||
#### 1. 插入操作
|
||||
|
||||
当插入之后产生一个临时 4- 节点时,需要将 4- 节点分裂成 3 个 2- 节点,并将中间的 2- 节点移到上层节点中,如果上移操作继续产生临时 4- 节点则一直进行分裂上移,直到不存在临时 4- 节点。
|
||||
当插入之后产生一个临时 4- 节点时,需要将 4- 节点分裂成 3 个 2- 节点,并将中间的 2- 节点移到上层节点中。如果上移操作继续产生临时 4- 节点则一直进行分裂上移,直到不存在临时 4- 节点。
|
||||
|
||||
![](https://github.com/CyC2018/InterviewNotes/blob/master/pics/912174d8-0786-4222-b7ef-a611d36e5db9.jpg)
|
||||
|
||||
|
@ -1223,7 +1223,7 @@ private void keys(Node x, Queue<Key> queue, Key lo, Key hi) {
|
|||
|
||||
2-3 查找树插入操作的变换都是局部的,除了相关的节点和链接之外不必修改或者检查树的其它部分,而这些局部变换不会影响树的全局有序性和平衡性。
|
||||
|
||||
2-3 查找树的查找和插入操作复杂度和插入顺序无关,在最坏的情况下查找和插入操作访问的节点必然不超过 logN 个。含有 10 亿个节点的 2-3 查找树最多只需要访问 30 个节点就能进行任意的查找和插入操作。
|
||||
2-3 查找树的查找和插入操作复杂度和插入顺序 **无关**,在最坏的情况下查找和插入操作访问的节点必然不超过 logN 个,含有 10 亿个节点的 2-3 查找树最多只需要访问 30 个节点就能进行任意的查找和插入操作。
|
||||
|
||||
### 红黑二叉查找树
|
||||
|
||||
|
@ -1327,7 +1327,7 @@ void flipColors(Node h){
|
|||
|
||||
#### 4. 插入
|
||||
|
||||
插入算法:
|
||||
先将一个节点按二叉查找树的方法插入到正确位置,然后再进行如下颜色操作:
|
||||
|
||||
- 如果右子节点是红色的而左子节点是黑色的,进行左旋转;
|
||||
- 如果左子节点是红色的且它的左子节点也是红色的,进行右旋转;
|
||||
|
|
Loading…
Reference in New Issue
Block a user