1. 平衡二叉树插入数据时需要旋转,也会造成一定的时间浪费。
2. 红黑树优化了旋转条件,使用红黑树规则进行存取数据,增删改查效率都高,红黑树本身是特殊的二叉查找树。
2.1 规则:
每个节点要么是红,要么是黑。
根节点必须为黑色。
如果一个节点没有子或父节点,则该节点的指针属性为为Nil,Nil为叶子节点,且为黑色。
不能出现红色节点相连的情况。
对于每个节点而言,从该节点到所有后代叶子节点的简单路径(即不能回头)上,均包含相同个数的黑节点。
2.2 节点中包含:
父节点地址
值
左子节点地址 右子节点地址
颜 色
且添加的节点默认是红色的,因为效率高。
添加数据流程
添加20,违背规则2
添加18,正常
添加23,正常
添加22,违背规则4,
添加17,正常
添加15,违背规则4