红黑树的概念和性质

红黑数的概念:
首先,红黑数是一棵二叉查找树(二叉搜索树),即所有左孩子都小于根节点,右孩子都大于根节点的树。其次,红黑树是一棵基本平衡的树。注意这里的词语是“基本平衡”。平衡二叉树的概念是,左子树和右子树的深度差小于等于1。而红黑树并不是严格的平衡树,它只是基本平衡。平衡到什么程度呢?最大深度小于等于最小深度的2倍。
红黑数的性质:
红黑树有5个性质:1,每个节点是红色或者黑色。2,根节点是黑色。3,所有叶子节点是黑色的。叶子节点都是NIL节点(空节点)4,红节点的孩子必须是黑节点。5,从一个节点,到它的所有叶子节点的所有路径中,经过的黑节点的个数是相等的。
关于性质3,可以推理出,所有从上到下的路径中,不能有2个连续的红节点。但可以有2个连续的黑节点。从红黑树的性质5,可以推理出“红黑树最大深度小于等于最小深度的2倍”这个结论。因为对任何一个节点而言,比如它到左孩子叶子节点共经历5个黑节点,那么它到右孩子叶子节点一定也是经历5个黑节点,经历5个黑节点能够做到的最大深度是多少呢?因为性质3,及不能有连续的2个红节点,所以最大深度一定是红黑相间的,那么可以做到最大深度10.所以说“红黑树最大深度小于等于最小深度的2倍”。

你可能感兴趣的:(数据结构)