R-B Tree
特点:
1. 根结点是黑色
2. 叶子结点是黑色【这里的叶子结点指为空(NIL, NULL)的叶子结点】
3. 从一个结点到该结点的子孙结点所有路径上包含相同数量黑节点
4. 如果一个结点是红色,它的子节点必须是黑色的
5. 每个节点是黑色或则红色
实际应用场景:
主要用来存储有序的数据,它的时间复杂度O(log n),效率非常高
java中使用红黑树结构的有TreeSet, TreeMap,以及Linux中的虚拟内存管理,都是通过红黑树实现的。
R-B Tree
特点:
1. 根结点是黑色
2. 叶子结点是黑色【这里的叶子结点指为空(NIL, NULL)的叶子结点】
3. 从一个结点到该结点的子孙结点所有路径上包含相同数量黑节点
4. 如果一个结点是红色,它的子节点必须是黑色的
5. 每个节点是黑色或则红色
实际应用场景:
主要用来存储有序的数据,它的时间复杂度O(log n),效率非常高
java中使用红黑树结构的有TreeSet, TreeMap,以及Linux中的虚拟内存管理,都是通过红黑树实现的。