1、本网站免费注册后即可以下载,点击开通VIP会员可无限免费下载!
2、资料一般为word或PPT文档。建议使用IE9以上浏览器或360、谷歌、火狐浏览器浏览本站。
3、有任何下载问题,请联系微信客服。
扫描下方二维码,添加微信客服
沪科教版选修1 算法与程序设计《第3章 常用算法及程序实现 第四节 递归法 活动 用递归法求解“兔子问题”》优秀教案设计
【教材分析】
递归法是《算法与程序设计》选修模块第三章常用算法及程序实现的最后一节,前面了解了用解析法、穷举法、排序和查找法解决问题,递归法是程序设计中一种非常重要的方法,对于一些看起来很复杂的问题,使用 递归 法可以轻松地解决,但递归法是较抽象的,学生理解起来有一定难度,故通过实例让学生理解递归法的基本思想,利用“兔子问题”掌握递归函数的编写与调用,利用“汉诺塔问题”掌握递归过程的编写与调用。
【重点难点】
重点:兔子问题的分析与递归函数的编写方法。
难点:理解递归函数与过程的调用执行的基本原理。
【策略与方法】
通过对免子繁殖的逐月分析,归纳每月免子总数的生成规律,进而获得一个递推公式,由此作为编写递归函数的重要依据。最后通过一个较小数5为例来分析递归函数调用的基本原理。
【教学过程】
一、引入概念
1. 实例说明
有4个人排成一队,问最后一个人的身高时,他说比第3个人高2厘米;问第3个人的身高时,他说比第2个人高2厘米;问第2个人的身高时,他说比第1个人高2厘米;最后问第1个人的身高,他说是170厘米。请问第4个人的身高是多少厘米?
这是一个典型的递归问题。
2. 问题分析
要求第4个人的身高就必须先知道第3个人的身高,而第3个人的身高取决于第2个人的身高,第2个人的身高又取决于第1个人的身高,且每个人的身高都比前一个人要高2厘米,即:
H4=H3+2
H3=H2+2
H2=H1+2
H1=170 (厘米)
于是可以得到右边的递归公式:
3. 递归过程
当n>1的时候,求每个人的身高所用的公式都是相同的,例如求第4个人的身高的递归过程如下:
4. 基本思想
⑴ . 递归过程可分为两个阶段:
递推阶段的工作是不断将原问题转化为另一个类似的新问题,直到某个新问题能根据已知条件计算出结果为止。例如图的左边斜下部分就是递推过程。
返回阶段是递推的逆过程,返回阶段是从递推结束处开始,一步一步向回推算结果,直到计算出原问题的结果为止。例如图的右边斜上部分就是返回过程。