§07 树状结构
红黑树
带颜色约束的自平衡 BST:插入后按父/叔颜色做变色或旋转+变色修复。
红黑树
伪代码
1
// 红黑树插入修复
2
procedure rbInsertFixup(T, z)
3
while z.parent 为红色 do
4
if z 的叔叔是红色 then
5
变色:父、叔变黑,祖父变红
6
z = 祖父
7
else
8
旋转 + 变色(LL/LR/RR/RL)
9
end if
10
end while
11
根节点染黑
12
end procedure