数据结构--折半查找

目录

折半查找知识总览

折半查找的代码实现

查找效率分析

折半查找判定树的构造

练习绘画折半查找判定树的构造

折半查找的效率

回顾本节内容


折半查找知识总览

  • 算法思想
  • 算法实现
  • 查找判定树
  • 折半查找效率

折半查找的代码实现

(基于增序排列时的代码)

查找效率分析

mid=(low+high)/2

紫色是查找失败,绿色是查找成功,1/11和1/12分别是对应的成功和失败元素的概率

折半查找判定树的构造

如果当前low和high之间有奇数个元素,则mid分割后,左右两部分元素个数相等

如果当前low和high之间有偶数个元素,则mid分割后,左半部分比右半部分一个元素

mid=(low+high)/2

这里是对mid向下取整

练习绘画折半查找判定树的构造

图中的数字是编号,是分别对应画出含有1个元素,2个元素,3个元素.....的查找表对应的折半查找判定树的样子

折半查找的效率

回顾本节内容

拓展思考

1.折半查找和顺序查找的速度问题

2、

这里是对mid向上取整

如果当前low和high之间有奇数个元素,则mid分割后,左右两部分元素个数相等

如果当前low和high之间有偶数个元素,则mid分割后,左半部分比右半部分一个元素

图中的数字是编号,是分别对应画出含有1个元素,2个元素,3个元素.....的查找表对应的折半查找判定树的样子

相关推荐
一定要AK31 分钟前
刷题时的学习笔记
c++·笔记·学习
xxxibolva2 小时前
SQL 学习
数据库·sql·学习
星辰即远方4 小时前
OC学习Foudation框架
学习·ios·objective-c
yyk的萌5 小时前
AI 应用开发工程师基础学习计划
开发语言·python·学习·ai·lua
Liangwei Lin7 小时前
洛谷 P1807 最长路
数据结构·算法
龘龍龙7 小时前
大模型学习(三)-RAG、LangChain
学习·langchain
会编程的土豆7 小时前
【数据结构与算法】二叉树从建立开始
数据结构·c++·算法
_日拱一卒7 小时前
LeetCode:最大子数组和
数据结构·算法·leetcode
计算机安禾7 小时前
【数据结构与算法】第22篇:线索二叉树(Threaded Binary Tree)
c语言·开发语言·数据结构·学习·算法·链表·visual studio code
算法鑫探8 小时前
解密2025数字密码:数位统计之谜
c语言·数据结构·算法·新人首发