当前位置: 首页 > ai >正文

408第一季 - 数据结构 - 折半查找与二叉排序树

折半查找

名词解释

 一般线性表的顺序查找

比如6 1 5 9 8 4 7

查9是4次

查10是7次

 有序线性表的顺序查找

比如1 4 5 6 7 8 9

查找9 7次

查3只要 2次了,优化了

折半查找

折半查找又称二分查找,使用于有序的顺序表

这里分别对32和11比较,并且向下取整

判定树

然后是判定树,它是平衡二叉树

高度向上取整

通过下面的图可以发现,查找失败了最少的3次,最多是4次 

 

但有时候查找失败的最多和最少是一样的,比如

如何出现这样的情况

可以看见,只要正好取整,那它就是满二叉树,就会出现我刚才说的那种情况

做题

1

b

2

 没说的话默认查找成功

3

如果你选择靠右(向上取整)的,那后面所有的都应该靠右(向上取整)

d选项选项画个图就懂了

平均查找长度

做题

1

分块查找

名词解释

过程

这里分为了4个块,然后下面是对应的下表,然后可以发现块间是有序的24,54,78,88

然后查找的话,比如找61,通过块间比较在54-78内,然后到里面一个一个顺序的找,72,61!找到了

二叉排序树(BST)

也叫二叉搜索树 binary search tree

定义

记住是要整个结点要小于根或者大于根

比如这里就是7大于6,就不是二叉排序树了

然后他的中序遍历是递增的!

二叉排序树的删除

第一条 : 叶子节点直接删

第二条只有右或者左子树

图a和图b这里:往上摞一摞就行了

  

第三种情况,左子树和右子树都有的情况

图c这里,可以把左子树的最大值螺上来,也可以把右子树的最小值螺上来

这里既可以螺65也可以螺81

直接后继就是右子树的最小值,直接前驱是左子树的最大值

做题

1

可以写中序遍历来比较

x1 x3 x5 x4 x2 

c

2

 要一个一个放,左边图是B选项,是错的

3

 

这里选A

先按左小右大画成一条线,然后一个一个看

95左边都比95小

22右边都比22大

91左边应该都比91小,但有个94惹事了

所以A错

http://www.xdnf.cn/news/13095.html

相关文章:

  • Java面向对象思想以及原理以及内存图解
  • 【大模型】RankRAG:基于大模型的上下文排序与检索增强生成的统一框架
  • while/do while/for循环几个小细节
  • Android Native 之 lmkd进程和kernel kswapd的关联
  • 树突状细胞与肿瘤
  • 在Mathematica环境中做数值实验来观察逻辑映射的复杂度
  • SPI Flash开发全解(基于GD25Qxx)
  • 选取货物 - 题解(0-1背包问题)
  • Ⅳ.计算机二级选择题(函数)
  • IP选择注意事项
  • #Vue3篇:透传 Attributes---$attrs插槽propemit
  • Java并发编程实战 Day 15:并发编程调试与问题排查
  • 力扣-20.有效的括号
  • 多进程通信之共享内存
  • 0,freeRTOS基础知识
  • SpringBoot API接口签名(防篡改)
  • win11 找不到 GPEDIT.MSC Win11找不到gpedit.msc怎么办?Win11提示缺少gpedit.msc文件怎么办???
  • PyCharm 和 Anaconda 搭建Python环境【图文教程】
  • 32位寻址与64位寻址
  • 轻量级屏蔽文件管理方案
  • Ascend NPU上适配Step1X-Edit模型
  • 线程池与并发工具:让并发编程更简单、高效!
  • CodeRider 2.0 体验手记:当 AI 编程照进现实,颠覆想象的开发之旅
  • 【51单片机】4. 模块化编程与LCD1602Debug
  • 中国大学本科专业采用‌学科门类—专业类—具体专业‌三级体系
  • 【DAY44】预训练模型
  • sql语句执行流程
  • 指令管理—弹幕/礼物/快捷键—抖音直播伴侣—使用教程
  • omi开源程序是AI 可穿戴设备的源码。戴上它,说话,转录,自动完成
  • 用大白话解释一下“高基数特征”