二分查找及其算法实现ppt课件_第1页
二分查找及其算法实现ppt课件_第2页
二分查找及其算法实现ppt课件_第3页
二分查找及其算法实现ppt课件_第4页
二分查找及其算法实现ppt课件_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、二分查找及其算法实现,江苏省扬中中等专业学校 陈廷栋,活动一:问题引入(目标引入问题,猜数游戏,请一同学在黑板上写一整数(在150内,活动二:探究学习(目标扩展问题,以规模为6的数组d为例:用一个数组d6来存放序列, left(l) 表示查找范围的第一个数组元素的下标, right(r) 表示最后一个数组元素的下标, mid(m) 表示中间位置元素的下标,1) 第一种情况:要找的值在后半部分; 以查找键x=9为例分析 第一次查找: 范围d0d5,m= (0+5)/2, dmx 所以可以确定接下来要找的范围是后半部分。 比较后l=m+1,第二次查找: 范围d3d5,m= (3+5)/2,dmx,

2、找到了,总结一: 如果dmx ,新查找的范围为后半部分, r值不变,l=m+1,l,m,2)第二种情况:要找的值在前半部分; 以查找键x=1为例分析,第一次查找:d0d5,m= (0+5)/2, dmx 所以可以确定接下来要找的范围是前部分。 比较后r=m-1,第二次查找: 范围d0d1,mid= (0+1)/2 , dmx,找到了,总结二: 如果dmx ,新查找范围为前半部分, l值不变,r=m-1,r,3)第三种情况:要找的值找不到; 以查找键x=12为例分析,总结三: (1)找到了查找会结束; (2)在l=r时重复查找,如果还是找不到,查找也会结束,l,m,活动三:讨论学习(目标解决问题

3、,总结查找原理(假设数组按升序排列) 二分查找首先找到中间的元素, 该元素对应的值小于查找关键字,此时应在 部分继续查找; 该元素对应的值大于查找关键字,此时应在 部分继续查找; 该元素对应的值等于查找关键字,那么 。 如果出现前两种情况,则继续在前半部分或后半部分内进行二分查找,直到出现第三种情况为止。如果沿指定方向测试完所有记录时仍未出现第三种情况,则表示,后半,前半,找到查找目标,查找结束,未找到查找目标,查找也结束,特点: 如果查找范围内的元素已经排好序,用二分 查找方法进行查找要比用顺序查找方法,快得多,程序实现:有一个数组有六个元素,已按升序排列,今输入一个数x,要求查找是否为其中的数。对各种情况输出相应的信息。请用二分查找法编写程序,main( ) int x, l=0, r=5, m, f=0; int a6=1,3,5,7,9,11; printf(“请输入一个数x:”); scanf(“%d,while (f=0,活动四:课堂检测(目标检验学习效果,有一个数组有十个元素,已按降序排列(数组元素的值通过赋初值给定),今输入一个数x,要求查找是否为其中的数。对各种情况输出相应的信息。请用二分查找法编写程序,课后作业,已知两集合A=6,12,18,42,44,52,67,94,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论