首页 > 其他分享 >6、查找树与平衡树

6、查找树与平衡树

时间:2022-12-08 16:00:43浏览次数:43  
标签:子树 17 查找 二叉树 平衡 节点

查找树:又叫做搜索树、排序树,它规定了内部的结构是有规律的。

平衡树:是查找树,且保证左右子树层数相当。


 

1、二叉查找树

它满足左子树小于根,右子树大于根,且每一个子树都是二叉查找树。

例如:

 

 对其进行中序遍历会得到有序集合:

  第一个:2 3 4 6 7 9 13 15 17 18 20

  第二个:1 3 4 6 7 8 10 13 14


 

2、平衡二叉树

 

平衡树也是查找树,是有序的,不过是为了避免查找树变成单链表,将其左右子树的深度做以平衡。

一般说平衡二叉树,指的是使用AVL算法实现平衡二叉树。

规定:

  左右子树高度差不大于1。


 

3、红黑树(平衡二叉树)

也是一种平衡二叉树。它给每个节点添加了颜色属性。

规定:

  1、根节点是黑色。

  2、红节点的子节点必须为黑色节点。

  3、空节点必须为黑色。

  4、从一个节点到该节点的子孙节点,的所有路径上包含相同数目的黑节点。

使用:

  Java中的TreeSet、TreeMap。


 

4、B树(平衡多叉树)

它是平衡树,但是支持多叉,降低树的深度。

目的:

  为了解决文件系统的文件查找。

 如下图:

  1、根节点的左子树P1存储了小于17的数据。

  2、根节点的中间子树P2存储了(17-35)的数据。

  3、根节点的右子树P3存储了大于35的数据。

 


5、B+树

所有数据都放在底层,上层只存放索引。

 

 使用:

  数据库中的索引默认就是使用B+树实现的。


 

6、B*树

在B+树的基础上,给非根节点和非叶子节点添加了指向兄弟节点的指针。

 

标签:子树,17,查找,二叉树,平衡,节点
From: https://www.cnblogs.com/lurenjia-bky/p/16966353.html

相关文章

  • 深度学习炼丹-不平衡样本的处理
    前言一,数据层面处理方法1.1,数据扩充1.2,数据(重)采样数据采样方法总结1.3,类别平衡采样二,算法(损失函数)层面处理方法2.1,FocalLoss2.2,损失函数加权参考资料......
  • 5、顺序表查找:顺序查找与折半查找
    1、顺序查找按照顺序一个一个比较,查找需要的值。代码实现:时间复杂度:T(n)=O(n)空间复杂度:S(n)=O(1)staticintfindKey(int[]arr,intobj){for(int......
  • shell命令:linux进程按内存使用、CPU使用率排序,查找进程对应的可执行文件
    top命令下按键shift+M,对各进程按内存使用率排序按键shift+P,对各进程按CPU使用率排序按键C显示各进程的完整命令查找进程对应的可执行文件的路径:ls-l/proc/进程号/exe......
  • python 依据IP查找其所属网段
    #coding='utf-8'#依据excel表格中所提供的IP,在另一张表中查找其所属网段importpandasaspdimportIPydf=pd.read_excel('net.xlsx')col_name=df.columns.t......
  • 线性探测法的查找函数
    这个是数据结构实验五的一道题,完成一个函数函数接口定义:PositionFind(HashTableH,ElementTypeKey);其中HashTable是开放地址散列表,定义如下:#defineMAXTABLESIZE......
  • 代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素
    tag:#二分#循环不变量leetcode地址:704.二分查找代码:functionsearch(nums:number[],target:number):number{ letleft=0,right=nums.length-1 //我们......
  • 二叉查找树
    目录二叉搜索树定义性质常用结论二叉树的常用操作二叉查找树的有效性校验递归的思路迭代的思路二叉查找树的查找查找最大值查找最小值二叉查找树的插入递归的思路迭代的思......
  • 深度学习炼丹-不平衡样本的处理
    前言一,数据层面处理方法1.1,数据扩充1.2,数据(重)采样数据采样方法总结1.3,类别平衡采样二,算法(损失函数)层面处理方法2.1,FocalLoss2.2,损失函数加权参考资料......
  • jQuery 查找标签 事件 Bootstrap页面框架
    1.查找标签1.基本选择器: $('#d1'):id选择器 $('.c1'):class选择器 $('div'):标签选择器2.组合选择器: $('div#d1'):查找id为d1的div标签 $('div.c1'):查找c......
  • jQuery 查找标签 事件 Bootstrap页面框架
    jQuery查找标签基本筛选器 :first//第一个:last//最后一个:eq(index)//索引等于index的那个元素:even//匹配所有索引值为偶数的元素,从0开......