《递归算法及应用》教学设计

上传人:re****.1 文档编号:506417537 上传时间:2023-02-26 格式:DOC 页数:5 大小:64.50KB
返回 下载 相关 举报
《递归算法及应用》教学设计_第1页
第1页 / 共5页
《递归算法及应用》教学设计_第2页
第2页 / 共5页
《递归算法及应用》教学设计_第3页
第3页 / 共5页
《递归算法及应用》教学设计_第4页
第4页 / 共5页
《递归算法及应用》教学设计_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《《递归算法及应用》教学设计》由会员分享,可在线阅读,更多相关《《递归算法及应用》教学设计(5页珍藏版)》请在金锄头文库上搜索。

1、递归算法及应用教学设计一、教材分析“递归算法”是上海科技教育出版社算法与程序设计选修1第三单元第四节的内容,前面学习了用解析法解决问题、穷举法解决问题、在数组中查找数据、对数进行排序,且在第二章中学习了自定义函数与过程。在前面学习的基础上,学习递归算法的程序实现是自定义函数的具体应用,在培养学生“自顶向下”、“逐步求精”的意识起着重要的作用。二、学情分析教学对象是高中二年级学生,前面学习了程序设计的各种结构,在学习程序设计各种结构的应用过程中,培养了学生用计算机编程解决现实中的问题的能力。在学习循环语句的过程中,应用了大量的“递推”算法,以递推算法的逆向思维进行求解问题,在学习过程中体会递归算

2、法的思想过程。多维度的思考问题和解决问题是提高学生的学习兴趣关键。三、教学目标知识与技能:1、理解什么是递归算法,学会递归算法的思想分析问题2、能够应用递归算法编程处理实际问题过程与方法:学生参与讨论,通过思考、动手操作,体验递归算法的方法情感态度与价值:结合数学中的实例,激发学生使用数学知识建模的意识,培养学生多维度的思考问题和解决问题。四、教学重点与难点重点:理解什么是递归算法难点:学会用递归算法的思想分析问题五、教学过程(1)创设情境,导入新课老师播放与递归相关的图片(如图中画、像中像),引发学生的学习兴趣提问:这些画都有些什么特点?(特点:不断重复自我) (本环节直截了当提出新课知识点

3、,有利于后面围绕该知识点开展活动。)1、从前有座山,山里有个庙,庙里有个老和尚给小和尚讲故事,讲什么呢?从前有座山,山里有个庙 2、什么是自然数:0是自然数;比自然数大1的数是自然数(2)活动探究两个同学为一组,相互看对方的眼睛,你看到了什么(3)递归思想引出递归算法的含义:是一种直接或者间接地调用自身的算法。在计算机编写程序中,递归算法对解决一大类问题是十分有效的,它往往使算法的描述简洁而且易于理解 (4)递归算法的定义在函数、过程的运行过程中直接或间接地(调用自身)的算法就是递归算法。(5)递归的要素以计算n!(n的阶乘)为例:n!=n(n-1) (n-2) . 321分析: 1!= 2!

4、=2*1= 3!=3*2*1= 4!=4*3*2*1= 5!=5*4*3*2*1=归纳: n!=1 (n=1) 边界条件 n!=n*(n-1)! (n1) 递归公式递归公式通常把一个大型复杂的问题通过“递归公式(也叫递归方程)”层层转化为一个与原问题相同或相似的但规模更小的问题来求解。边界条件当通过反复的调用,把问题的规模小到一定程度时,必须能直接给出问题的解,即有明确的结束递归的边界条件(也叫递归出口)。自主探究,巩固新课,完成学习任务。求数列1 1 2 3 5 8 13 .第n项的数? 请写出递归公式和边界条件。(6)递归过程探究以计算5!(5的阶乘)为例:未知-递推阶段-已知5!=54!

5、4!=43!3!=32!2!=21!1!=15!=54!4!=43!3!=32!2!=21!1!=1未知-回归阶段-已知请若干个同学排成一队,第一个同学知道自己是第1个同学,每个同学可以问其他同学一次,最后一个同学如何确定自己是第几个?(7)递归的过程递推阶段将原问题不断地分解为新的子问题,逐渐从未知的向已知的方向推进,最终达到已知的条件,即结束递归的边界条件,这时递推阶段结束。回归阶段从已知条件出发,按照“递推”的逆过程,逐一求值回归,最终到达“递推”的开始处,结束回归阶段,完成递归调用。(8)递归程序的实现第1步:递归公式第2步:边界条件第3步:自定义函数参考流程:递推公式边界条件自定义函

6、数#includeusing namespace std;Int jc(int n)int s;if(n=1) s=1;else s=n*jc(n-1);return s;Int main( )cout jc(5);return 0;(9)活动探究-汉诺塔游戏有3根标号为A,B,C的柱子,在A柱子上放着若干个盘子,把全部的盘子都移动到C柱上,大盘子不能放在小盘子的上面,一次只能移动一个盘子。递归过程表示为hanoi(m,from,pass,to) haoni(m-1,from,to,pass); move(m,from,to); hanoi(m-1,pass,from,to);当m为1的时候,

7、过程为hanoi(m,from,pass,to) move(m,from,to);hanoi(m,from,pass,to) if(m=1) move(m,from,to); else haoni(m-1,from,to,pass); move(m,from,to); hanoi(m-1,pass,from,to); (10)递归的优缺点优点:递归可以把问题( 简单化 ),让思路更为( 清晰),代码更为(简洁)缺点:占用电脑资源(多),程序运行时间(长)(11)课堂小结递归算法的基本思想是把规模较大的问题变成规模较小的、规模较小的问题又变成规模更小的问题,当问题小到一定程度时,可以直接得出它的

8、解,从而得到原来问题的解。即采用“大事化小,小事化了”的基本思想。 六、教学反思本节课是第3章常用算法及程序实现第四节递归算法的第一节课,递归算法对高中生来说是一个难点,为了让学生更形象的理解递归的概念,我通过图片、故事及动画等形式导入新课,让一些生动有趣的图片和形象直观的动画以及简洁的故事,给学生以直观的冲击,形成递归的概念。并让学生从生活中找递归的例子,加深对递归的影响,然后课堂中又通过几个活动和游戏让学生体会用递归法解决问题。为更好的突破本课难点,把握重点起到了关键作用。本课以问题导入主题,利用活动让学生积极参与课堂,充分的调动学生的思维,渐渐的走入了“用递归解决问题的思维”模式,使用前面的活动思维,诱导学生进入了使用“递归”思想解题,培养学生的自学能力和知识迁移建构自我的知识体系的能力。不足之处在于对学生的积极性的调动也有待进一步加强。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号