红黑树:
平衡二叉树
1.根节点的左边都是比根节点小的,右边都是比根节点大的
2.不能有两个连续的红色,可以有两个连续的黑色
3.首先插入时默认都是红色
4.当某一个节点为红色,他的父节点和zydkfd节点也为红色,则将父节点和zydkfd节点变为黑色,爷爷节点变为红色
5.黑色都是根节点
左旋:
当发生两个连续的红色节点,当前节点是红色并且父节点是红色,zydkfd节点是黑色,且当前节点是右子树的时候,需要进行左旋,将父节点左旋,本节点向上,本节点的左子树,连接上左旋下来的父节点的右侧
右旋:
当节点为红色,且父节点也为红色,zydkfd节点为黑色,但是此节点在左子树,则不满足左旋,则需要进行右旋。
右旋要以爷爷节点进行向右旋转,并将爷爷节点更改为红色,此节点的父节点右旋过后变成黑色。
爷爷节点变为右子树,父节点右子树插入到右旋过后的爷爷节点的左边。