标签:平衡 应用 图片 比较 http png map 技术 平衡二叉树
红黑树是一个平衡的二叉树,但不是一个完美的平衡二叉树。
红黑树的应用比较广泛,主要是用它来存储有序的数据,它的时间复杂度是O(lgn),效率非常之高。
在C++ STL中,很多部分(包括set, multiset, map, multimap)应用了红黑树的变体(SGI STL中的红黑树有一些变化,这些修改提供了更好的性能,以及对set操作的支持)
每个节点是红色或者黑色。
根节点是黑色。
每个叶子节点(NIL)是黑色。(这里叶子节点,是指为空(NIL或NULL)的叶子节点!)
如果一个节点是红色的,则它的子节点必须是黑色的。(也就是说不存在两个连续的红色节点)
从任一节点到其每个叶子的所有路径都包含相同数目的黑色节点。
这些特性约束了红黑树的关键性质: 从根到叶子的最长的可能路径不多于最短的可能路径的两倍长。结果是这个树大致上是平衡的。
标签:平衡 应用 图片 比较 http png map 技术 平衡二叉树
原文地址:https://www.cnblogs.com/mengchunchen/p/9060109.html