概述;
- 红黑树(Red Black Tree) 是一种自平衡二叉查找树,是在计算机科学中用到的一种数据结构,典型的用途是实现关联数组.
- 红黑树是在1972年由Rudolf Bayer发明的,当时被称为平衡二叉B树(symmetric binary B-trees).后来,在1978年被 Leo J. Guibas 和 Robert Sedgewick 修改为如今的“红黑树”.
- 红黑树是一种特化的AVL树(平衡二叉树),都是在进行插入和删除操作时通过特定操作保持二叉查找树的平衡,从而获得较高的查找性能.
- 它虽然是复杂的,但它的最坏情况运行时间也是非常良好的,并且在实践中是高效的: 它可以在O(log n)时间内做查找,插入和删除,这里的n 是树中元素的数目.
什么是红黑树?
红黑树(Red Black Tree) 是一种自平衡的二叉查询树.除了符合二叉查询树的基本特性外,还有以下的特性:
- 1.节点是红色或黑色.
- 2.根节点是黑色.
- 3.每个叶子节点都是黑色的空节点(NIL节点).
- 4.每个红色节点的两个子节点都是黑色.(从每个叶子到跟的所以路径上不能有两个连续的红色节点)
- 5.从任意节点到其每个叶子的所以路径都包含相同数目的黑色节点.