zoukankan      html  css  js  c++  java
  • 排序二叉树、平衡二叉树、红黑树

    1、排序二叉树

      排序二叉树是一种特殊的二叉树,可以非常方便的进行检索,它具有如下特点:

    • 若它的左子树不为空,则左子树上所有节点值都小于根节点的值
    • 若它的右子树不为空,则右子树上所有节点值都大于根节点的值
    • 左子树和右子树都一颗排序

      排序二叉树评价查找时间为O(logn),极端情况下(所有节点都靠近一侧,树已经退化成了一个链表),这时的查找时间为O(n)

    2、平衡二叉树

      平衡二叉树是为了防止排序二叉树退化成链表,它具有如下特性:

    • 具备排序二叉树的特性
    • 所有节点的左子树和右子树的高度差不超过1

    3、红黑树

      红黑树是一种非完美平衡的自平衡二叉树,它的时间复杂度为O(longn)红黑树的特征如下:

    • 所有节点都有颜色,要么是红色,要么是黑色
    • 根节点是黑色的
    • 所有叶子节点(NIL)都是黑色的空节点
    • 红色节点的子节点必须是黑色的
    • 任何一个节点到它的叶子节点包含相同的黑色节点
  • 相关阅读:
    旗鱼移动Android开发规范
    02_Java基本语法_5
    02_Java基本语法_4
    02_Java基本语法_3
    Promise的API-all
    Promise.reject方法
    Promise的API-resolve
    Promise的API-构造函数-then-catch
    fs模块封装
    AJAX请求
  • 原文地址:https://www.cnblogs.com/zhi-leaf/p/12819423.html
Copyright © 2011-2022 走看看