zoukankan      html  css  js  c++  java
  • 二叉树(binary tree)

    1、概述

      如果树中的每个节点的子节点的个数不超过2,就是一个二叉树;

    2、特点

      增删改查的性能都很高;

    3、二叉查找树(二叉排序树、二叉搜索树)(Binary Search Tree)

      左子树所有节点的值均小于等于他的根节点的值;

      右子树所有节点的值均大于或者等于它根节点的值;

      每一个节点最多有两个子树;

      有可能出现“瘸子现象”就变成链表了;

    4、平衡二叉树(Balanced Binary Tree/AVLTree)

      基于二叉查找树,但是让树不要太高,尽量让树元素平衡分布。这样综合性能就高了;

      规则:它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一颗平衡二叉树;

    5、红黑树(Red Black Tree)

      就是平衡的二叉查找树;

      特征:

        每一个节点或是红色,或是黑色;

        根节点必须是黑色;

        每个叶节点(Nil)是黑色的;

        如果某一个节点是红色,那么它的子节点必须是黑色;

        对每一个节点,从该节点到其所有后代叶节点的简单路径上,均包含相同数目的黑色节点;

      在进行元素插入的时候,和之前一样;每一次插入完毕以后,使用黑色规则进行校验,如果不满足红黑规则,就需要通过变色,左旋和右旋来调整树,使其满足红黑规则;

    6、平衡多路查找树(B-Tree)

      

    7、B+Tree

      B+Tree是在B-Tree基础上的一种优化,使其更适合实现外存储索引结构,InnoDB存储引擎就是用B+Tree实现其索引结构。

      

  • 相关阅读:
    让linux下的eclipse支持GBK编码
    Ubuntu 14.04 安装深度音乐的方法(下载速度极慢未成功)
    wine使用
    Sql语句查看表结构
    读数据库所有表和表结构的sql语句
    详解软件工程之软工文档
    浅谈UML的概念和模型之UML九种图
    HTML5 file api读取文件的MD5码工具
    Sublime Text 3 快捷键汇总
    领域驱动设计系列文章汇总
  • 原文地址:https://www.cnblogs.com/xp2h/p/12520592.html
Copyright © 2011-2022 走看看