zoukankan      html  css  js  c++  java
  • 【算法导论】第13章,红黑树

    红黑树是一种“平衡的”查找树,能确定动态集合操作时间为O(logn)

    13.1 红黑树的性质

    红黑树的每个节点除了 key, value, p, left, right之外,还有color, 

    有value的都视为内节点,如果没有儿子,认为儿子都是NIL,

    红黑性质:
    1、每个节点要么红要么黑

    2、根节点黑

    3、叶子节点(NIL)黑

    4、如果节点为红,那么儿子为黑

    5、从任意节点出发,下面任意一条路径,黑节点个数都相同。

    机智处理

    NIL节点指向同一个位置,其value为NIL,p, left, right的定义并不重要。

    整个树任意一条路径黑色节点的个数叫做黑高度。

    定理:n个节点的红黑树高度至多为2log(n+1)

    13.2 旋转

    插入和删除元素,可能会导致红黑性质改变,为了维持红黑性质,可以旋转。

    左旋和右旋:

    左旋:左父右子 到 右父左子: 

    右旋:右父左子 到 左父右子:

    13.3 插入

    13.4 删除

  • 相关阅读:
    weblogic内存快速配置
    weblogic优化参数
    weblogic10.3.6忘记用户名或者密码的解决方法
    Linux shell 环境变量及有效范围
    linux文本处理常用命令
    Scala实践7
    Scala实践5
    Scala实践4
    Scala实践3
    Scala实践2
  • 原文地址:https://www.cnblogs.com/yesuuu/p/9428009.html
Copyright © 2011-2022 走看看