lionel chang

导航

2012年8月19日 #

linux内核中红黑树

摘要: 一.红黑树的定义一颗红黑树必须满足以下几点:1.树的节点要么是红色,要么是黑色。2.根结点一定是黑色3.所有叶子节点都是黑色的。(注意,红黑树的叶子节点是NULL节点)4.每个红色节点的两个子节点都是黑色。(从每个叶子到根的所有路径上不能有两个连续的红色节点)5.从任一节点到其每个叶子的所有简单路径都包含相同数目的黑色节点。以上几点保证了红黑树的关键性质:从根到叶子的最长的可能路径不多于最短的可能路径的两倍长。从而,保证了红黑树是平衡的。二.旋转、插入、删除在红黑树进行了插入、删除操作后,要保证红黑树仍然是平衡的,必须对相应的节点进行旋转。关于旋转请参考王哲的博客基于树的查找--------- 阅读全文

posted @ 2012-08-19 18:12 woshizyl 阅读(185) 评论(0) 推荐(0) 编辑