红黑树选择和颜色变换规则:所有插入点默认为红色
- 1. 变颜色情况:当前节点的父亲节点、叔叔节点均为红色
(1)把父亲节点设为黑色
(2)叔叔节点设为黑色
(3)祖父节点设为红色
(4)指针定位到祖父节点
- 2. 左旋:当前节点的父节点为红色,叔叔节点为黑色,且当前节点是右子树。
左旋以父节点作为左旋
- 3. 右旋:当前节点的父节点为红色,叔叔节点为黑色,且当前节点是左子树。
(1)把父节点变为黑色
(2)祖父节点变为红色
(3)以祖父节点右旋
(1)把父亲节点设为黑色
(2)叔叔节点设为黑色
(3)祖父节点设为红色
(4)指针定位到祖父节点
左旋以父节点作为左旋
(1)把父节点变为黑色
(2)祖父节点变为红色
(3)以祖父节点右旋
相关文章: