红黑树

带颜色约束的自平衡 BST:插入后按父/叔颜色做变色旋转+变色修复。

红黑树
01 / 27 步
红黑树:按序列 10, 20, 30, 15, 5, 40, 25 逐个插入并修复红黑性质。 比较 0 · 交换 0
伪代码

				
					
					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
				
			
01 / 27
速度