《折半查找算法》的教学设计及反思.docVIP

《折半查找算法》的教学设计及反思.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE PAGE 1 《折半查找算法》的教学设计及反思. 江苏省白蒲高级中学 刘兴圣 226511 授课题目:折半查找算法 适应范围:高一年级 所属科目:教科版高中信息技术选修模块——算法与程序设计模块 授课章节:第三章第3节《在数组中查找数据》 教学设计 (一)教学目标 知识与技能:让学生理解折半查找法的基本思想,并能够编写程序代码。 过程与方法:带领学生一同分析问题、体会理解算法设计思想,先掌握编写关键性语句,再到完整程序的书写,并最终通过分析代码进一步加深理解折半查找算法的设计思想。让学生从中逐渐学会解决问题的基本方法。 情感态度与价值观:在分析折半查找算法的过程中,引导学生积极思考和分析问题,培养学生严谨的思维习惯。通过各组讨论、实践活动,养成良好的与人协作交流能力。 (二)教材分析 教学重点:以图示法方式,演示折半查找算法的基本思想。 教学难点:由折半查找算法的思想到程序代码编写的转换,尤其是其中关键性语句的编写是教学中的难点。 (三)学情分析 学习对象是高一学生,本节知识内容是在学习了数组的相关知识和顺序查找算法之后进行的,由于折半查找算法逻辑性比较强,同时学生对算法的相关概念还比较陌生,基础相对欠缺,以及学生的差异比较大,所以在教学过程中尽量要放慢讲解的速度,循序渐进的展开知识点要素,让学生能够对相关的问题进行充分思索、分析,再到问题解决。 (四)教学策略 创设趣味问题情境,引导学生了解什么是折半查找算法,以图示法方式来演示折半查找算法的基本思想,并以伪代码形式描述算法中的关键性语句,最终到完整程序代码的书写。 对课题中的关键环节采用日常生活问题引入,让学生通过比较,由浅入深地引导学生思考、讨论。通过讲授、演示观察、讨论相结合,充分调动学生的主观能动性,以达到主动式学习、探究性学习。 (五)教学方法:图示法,讲授法。 (六)教学准备:多媒体教室。 (七)课时安排:一课时 教学过程 一、导入(2~3分钟) 上一节课我们一起学习了顺序查询法,知道它一般应用在这种情况之下:待查数据表没有顺序,且数据表的长度比较短。反之;待查数据表是有序的,且数据表很长,那还能用顺序查询算法来查询数据吗?答案是肯定的,但其查询效率不高,尤其是待查数据表特别大的时候。为了解决这个问题,我们将学习一个查询效率更高的查询方法——折半查找算法,即书上所讲的二分查询法。 二、新课讲授 1、折半查找算法的基本思想(2~3分钟) 首先我们一起来看一看折半查询算法中的“折半”的含义。 师:何为折半呢? 生:减半;打一半的折扣。 例如,我手里拿着一根绳子,现在我们来进行折半试验,首先拿住绳子的两个端点, 然后从中点的位置进行对折,这样绳子就缩短为原来长度一半,然后将一半的绳子继续执行与刚才相同的操作,使得绳子的长度逐渐的缩短,直到绳子长度短得不能再进行折半了。 师:那什么时候就不能再折半了呢? 生:即绳子的两个端点合二为一为止。 折半查找算法的思想与绳子折半的过程基本相同。下面我们先通过图示来看看折半查找算法究竟是什么? 2、图示分析算法思想,并编写关键性语句(12~20分钟) 假设一个从小到大排列的数据存放在一个数组中——Data(10),而查找数据存放在变量x中。如图1所示,橙色方框的代表的是查询数据x,每个浅兰色方框代表的是数组中的每个元素,框内显示的数据是每个数组元素对应的下标(序号),整排的浅兰色方框就可以看成整个数组,即待查数据表(数组元素表)。 x0 x 0 1 2 3 4 5 6 7 8 9 10 Low High (图1) 第一步:就像抓住绳子的两端一样,首先设立两个标记Low、High分别来标识查询区间的低端和高端,即数组元素的下标,如图1所示。 师:对于初始查询区间,它们是多少呢? 生:Low=0 , High=10 第二步:取区间的中点标记Mid,如图2所示。 师:查询区间的中点为多少?(这个地方,有的学生可能直接说出下标值,所以要提醒学生让中点和两个端点相联系,即用端点表示中点) 生:Mid=(Low+High)/2 师:中点位置上的数据为什么?(提醒学生数据是放在数组Data中的) 生:Data( Mid) 01 0 1 2 3 4 5 6 7 8 9 10 Mid Low High (图2) 第三步:判断中点位置上的数据Data( Mid)与要查找数x是否相等,如何相等,则找到,并结束查找;如果不相等,就执行第四步。 师:这个判断语句如何写呢? 生:if Data( Mid)=x then print “x找到” 结束查找 end if 第四步:如果不相等,那么对查询区间进行折半操作。 师:那如何折半——是从中点处向左侧折半还是向右侧折半?(这是整个折半查询进行下去的关键所

文档评论(0)

xxj1658888 + 关注
实名认证
文档贡献者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档