文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>算法导论 红黑树基础知识

算法导论 红黑树基础知识

时间:2011-03-03  来源:专注于算法

红黑树的五个特点:

1.      每个节点颜色或红或黑

2.      根节点是黑色

3.      每个叶节点为黑色(通常为了简便,所有叶子节点都用一个黑节点代替,或者在图中是直接省略)

4.      如果一个节点是红的,那么它的两个字节点一定是黑的

5.      对于任意一个节点,从这个节点出发直到叶子的两条路径上的黑节点的数目相同(对于一般树的情况,则是所有路径上的黑节点数目相同)

 

概念:

black

定理:

一个有n个节点红黑树的高度不超过2*lg(n+1)。

 

证明:要证h<=2*lg(n+1),只要证n>=2h/2 -1,因为

              h(x)<2*bh(x)        x为红节点

              h(x)=2*bh(x)        x为黑节点

所以h(x)<=2*bh(x)

 

要证n>=2h/2 -1,只要证n>=2bh(x)  -1,用归纳法。

对于只有一个内节点的情况,由性质2可知,black height等于1,n=2bh(x)  -1

令以节点x为根的子树的black height为bh(x),子树节点总数为n>=2bh(x)  -1

对于x的两个子节点,其black height至少为bh(x)-1,所以两个子树的节点数目之和不少于(2bh(x)-1 -1)+(2bh(x)-1 -1),再加上根节点,节点总数为(2bh(x)-1 -1)+(2bh(x)-1 -1)+1=2bh(x)  -1

即n>=2bh(x)  -1。而bh(x)>=h(x)/2,所以n>=2h/2 -1。

 

相关阅读 更多 +
排行榜 更多 +
别惹神枪手安卓版

别惹神枪手安卓版

冒险解谜 下载
坦克战争世界

坦克战争世界

模拟经营 下载
丛林反击战

丛林反击战

飞行射击 下载