数据结构--折半查找

目录

折半查找知识总览

折半查找的代码实现

查找效率分析 

折半查找判定树的构造

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

折半查找的效率 

回顾本节内容 


折半查找知识总览

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

数据结构--折半查找_第1张图片

数据结构--折半查找_第2张图片 

数据结构--折半查找_第3张图片 

数据结构--折半查找_第4张图片

 

数据结构--折半查找_第5张图片 

数据结构--折半查找_第6张图片 

数据结构--折半查找_第7张图片 

 数据结构--折半查找_第8张图片

数据结构--折半查找_第9张图片 

折半查找的代码实现

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

数据结构--折半查找_第10张图片 

查找效率分析 

mid=(low+high)/2

数据结构--折半查找_第11张图片 

数据结构--折半查找_第12张图片 

数据结构--折半查找_第13张图片 

数据结构--折半查找_第14张图片 

 

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

数据结构--折半查找_第15张图片 

折半查找判定树的构造

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

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

mid=(low+high)/2

这里是对mid向下取整

数据结构--折半查找_第16张图片

数据结构--折半查找_第17张图片 

数据结构--折半查找_第18张图片 

 

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

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

数据结构--折半查找_第19张图片

数据结构--折半查找_第20张图片 

数据结构--折半查找_第21张图片 

折半查找的效率 

数据结构--折半查找_第22张图片 

回顾本节内容 

 数据结构--折半查找_第23张图片

拓展思考 

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

数据结构--折半查找_第24张图片 

2、

数据结构--折半查找_第25张图片 

数据结构--折半查找_第26张图片 

这里是对mid向上取整 

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

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

3.

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

数据结构--折半查找_第27张图片

你可能感兴趣的:(数据结构,学习,考研)