红黑树

2019-02-24  本文已影响0人  慧鑫coming

什么是平衡二叉查找树?

红黑树的定义要求

1、红黑树中的节点,一类被标记为黑色,一类被标记为红色。
2、根节点是黑色的。
3、每个叶子节点都是黑色的空节点(NIL)为了简化红黑树的代码实现而设置,也就是说,叶子节点不存储数据。
4、任何相邻的节点不可能同时为红色,也就是说,红色节点是被黑色节点隔开的。
5、每个节点,从该节点到达其可达叶子节点的所有路径,都包含相同数目的黑色节点。

怎样判断红黑树是近似平衡的?

红黑树小结

红黑树是一种平衡二叉查找树。它是为了解决普通二叉查找树在数据更新的过程中,复杂度退化的问题而产生的。红黑树的高度近似 log2n,所以它是近似平衡,插入、删除、查找操作的时间复杂度都是 O(logn)。
  因为红黑树是一种性能非常稳定的二叉查找树,所以,在工程中,但凡是用到动态插入、删除、查找数据的场景,都可以用到它。不过,它实现起来比较复杂,如果自己写代码实现,难度会有些高,这个时候,我们其实更倾向用跳表来替代它。

上一篇 下一篇

猜你喜欢

热点阅读