红黑树原理

Posted Recently 祝祝

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了红黑树原理相关的知识,希望对你有一定的参考价值。

算法 -> 添加

1)添加节点为根节点

		添加后变色 红变黑

2)添加节点的父节点为黑节点

		直接添加

3)添加节点的父节点和叔父节点都为红节点

		【父节点(变黑)和叔父节点(变黑)】
		【祖父节点(变红) -> 自我修正】

4)添加节点的父节点为红节点 叔父节点为黑节点

		添加节点为父节点左节点 父节点为祖父节点的左节点
		【以父节点为参照物 右旋】
		【父节点(变黑)和祖父节点(变红)分别变色】

5)添加节点的父节点为红节点 叔父节点为黑节点

		添加节点为父节点右节点 父节点为祖父节点的右节点
		【以父节点为参照物 左旋】
		【父节点(变黑)和祖父节点(变红)分别变色】

6)添加节点的父节点为红节点 叔父节点为黑节点

	父节点为祖父节点的右节点	添加节点为父节点左节点 
		【以子节点为参照物 右旋】
		【以子节点为参照物 左旋】
		【子节点(变黑)和祖父节点(变红)分别变色】

7)添加节点的父节点为红节点 叔父节点为黑节点

		添加节点为父节点右节点 父节点为祖父节点的左节点
		【以子节点为参照物 左旋】
		【以子节点为参照物 右旋】
		【子节点(变黑)和祖父节点(变红)分别变色】

举列子:

1,7,9,20,50,18,17,10,100;

图解:







End》》》》
当你的才华还撑不起你的野心的时候,
你就应该静下心来学习。

以上是关于红黑树原理的主要内容,如果未能解决你的问题,请参考以下文章

红黑树与JAVA实现

红黑树

红黑树

红黑树总览

Java集合源码分析之基础:红黑树(RB Tree)

001 红黑树之 原理和算法详细介绍