• 算法树概念


    满二叉树=>完全二叉树

    二叉查找树=>平衡二叉查找树(AVL)=>红黑树

    B-Tree(B树) => B+Tree(B+树)

    满二叉树

    除了叶子节点外每一个节点都有两个子节点,且所有叶子节点都在二叉树的同一高度上。

    完全二叉树

    如果二叉树中除去底层节点后为满二叉树,且底层节点依次从左到右分布,则此二叉树被称为完全二叉树。

    满二叉树一定是完全二叉树

    二叉查找树(Binary Search Tree - BST,又称二叉排序树、二叉搜索树)

    二叉查找树根节点的值大于其左子树中任意一个节点的值,小于其右子树中任意一节点的值,且该规则适用于树中的每一个节点。

    二叉平衡树AVL树的特点

    • 具有二叉查找树的特点(左子树任一节点小于父节点,右子树任一节点大于父节点),任何一个节点的左子树与右子树都是平衡二叉树
    • 任一节点的左右子树高度差小于1,即平衡因子为范围为[-1,1] 如上左图根节点平衡因子=1,为AVL树;右图根节点平衡因子=2,固非AVL树,只是BST。

    平衡二叉树一定是二叉查找树

    B-树,这里的 B 表示 balance( 平衡的意思),B-树是一种多路自平衡的搜索树(B树是一颗多路平衡查找树
    它类似普通的平衡二叉树,不同的一点是B-树允许每个节点有更多的子节点。下图是 B-树的简化图.

    B+树是B-树的变体,也是一种多路搜索树, 它与 B- 树的不同之处在于:

    1. 所有关键字存储在叶子节点出现,内部节点(非叶子节点并不存储真正的 data)
    2. 为所有叶子结点增加了一个链指针

    B-树每个节点都存储数据,  B+树只有叶子节点才存储数据,内节点不存储数据,即底层节点才存储数据

    参考链接:

    https://cloud.tencent.com/developer/article/1669288

    https://www.jianshu.com/p/ace3cd6526c4

  • 相关阅读:
    rosbag 那些事
    rosbag record and play
    xsens melodic ros driver
    ros the public key is not available
    pyhton2与pyhton3切换
    期待已久的2013年度最佳 jQuery 插件揭晓
    MVC学习资料
    依赖注入框架Autofac的简单使用
    bootstrap
    https://nodejstools.codeplex.com
  • 原文地址:https://www.cnblogs.com/hzijone/p/16585823.html
Copyright © 2020-2023  润新知