毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 教学论文 >> 正文

对分查找算法及程序实现教学案例 第3页

更新时间:2011-11-17:  来源:毕业论文
  Endif
    Text3.Text = Str(nc)
End Sub
老师引导学生根据流程图分析填空:①Do While i <= j  ②Fix((i + j) / 2)   ③pos = m   ④i= m + 1  ⑤j = m – 1  ⑥pos = 0
问题八:这里查找条件的循环语句能不能用for语句?
生:(思考讨论)不行,因为查找的次数是未知的,所以循环次数是未知的。
设计意图:①通过程序填空设疑,激发思考,掌握从流程图到程序实现的方法。②复习循环Do语句、For语句的使用场合③故意把“修改查找范围”的条件key<d(m)改为d(m)<key,考验学生能否灵活运用对分变化过程。

(五)小结交流,质疑探究
师:对分查找在日常生活中应用广泛,请你列举一些实际例子。
学生讨论交流,老师补充,如:
1.《幸运52》中的猜商品价格游戏。
2.用二分法求解方程近似解。
3. 在字典中查找某个单词。
4.线路查找等问题,如:从上海到美国旧金山的海底电缆有15个接点,现在某接点发生故障,需要及时修理,为了尽快断定故障发生点,一般也用对分查找法。
问题九:两种查找方法有什么不同?请完成下表(学生回答):
 前提条件 查找方法 最多查找次数
顺序查找 数据不一定有序 按照顺序依次查找 n
对分查找 数据必须有序 先查找中间数,然后根据大了小了,把查找范围缩小一半 「log2n」
问题十:谈谈你对“对分查找”算法优缺点的理解,有没有需要完善的地方?
生3:如果有很多数,找的是第一个或最后一个这样特殊的数,效率是很低的。
师:很好,不仅是第一个数,还有最后一个数,以及每次i和j所指向的数,例如刚才的查找例子中,35这个数明明被j早就指到了,却“视而不见”,不断地比下去,真让人心急。请大家思考讨论,可不可以改进这个对分查找过程。
生4:(思考讨论后)与中间数比之前,先和两头的数比较一下。可以在原程序段Do While i <= j后加入如下两条语句:毕业论文http://www.youerw.com/
       If d(i)=key then pos=i:nc=nc+1:exit do
       If d(j)=key then pos=j:nc=nc+1:exit do
师:真是个聪明的孩子!说实话,我也不知道有没有人提出过这样的改进方法,这种方法与原来相比是不是真的优化了,但我们可以相信,现有的知识不一定是最好的,有了疑问就可以去深入研究,说不定大家能研究出个成果来,科学就是这么来的。
教学反思:因为我在平时课堂中,尽可能创造轻松愉悦的学习氛围,尽可能巧设问题,激发学生积极思考,所以学生学习一般比较主动,课堂也很“活”,经常会提出一些知识上的质疑。这节课也是一样,我首先用一个轻松的猜数游戏激趣导入;然后在主要算法表示中,通过流程图、代码段渐进式地描述,在知识难点处反复设疑,突破难点;然后在课堂小结中,及时抓住学生在学习过程中冒出来的思想火花,通过“谈谈你对《对分查找》算法优缺点的理解,有没有需要完善的地方?”这个质疑,激发学生思考探究,教育学生“算法”只是解决问题的方法,它没有最好,只有更好,不要迷信书本和现有的科学,要敢于挑战,树立起不断完善,追求卓越的思想。

上一页  [1] [2] [3] 

对分查找算法及程序实现教学案例 第3页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。