红黑树是什么?怎么实现?时间复杂度

红黑树是什么?怎么实现?时间复杂度 ?

  红黑树(Red-Black Tree,简称R-B Tree),它一种特殊的二叉查找树。 红黑树是特殊的二叉查找树,意味着它满足二叉查找树的特征:任意一个节点所包含的键值,大于等于左孩子的键值,小于等于右孩子的键值。 除了具备该特性之外,红黑树还包括许多额外的信息。

  红黑树的特性: 红黑树是特殊的AVL树,遵循红定理和黑定理 红定理:不能有两个相连的红节点 。黑定理:根节点必须是黑节点,而且所有节点通向NULL的路径上,所经过的黑节点的个数必须相等。

  基本操作是添加、删除和旋转。在对红黑树进行添加或删除后,会用到旋转方法。旋转的目的是让树保持红黑树的特性。旋转包括两种:左旋 和 右旋。

  红黑树的应用比较广泛,主要是用它来存储有序的数据,它的查找、插入和删除操作的时间复杂度是O(lgn)。

 

 

 

posted @ 2019-07-10 15:30  威兰达  阅读(3939)  评论(0编辑  收藏  举报