已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
递归算法 从前有座山 山里有座庙 庙里有个老和尚 给小和尚讲故事 故事是什么呢 从前有座山 山里有座庙 庙里有个老和尚 给小和尚讲故事 故事是什么呢 从前有座山 山里有座庙 庙里有个老和尚 给小和尚讲故事 故事是什么呢 老和尚的故事 案例一 小猴吃桃 有一天小猴子摘若干个桃子 当即吃了一半还觉得不过瘾 又多吃了一个 第二天接着吃剩下桃子中的一半 仍觉得不过瘾又多吃了一个 以后小猴子都是吃尚存桃子一半多一个 到第10天早上小猴子再去吃桃子的时候 看到只剩下一个桃子 问小猴子第一天共摘下了多少个桃子 我们能不能这样设一个函数 算法描述 function你有多少桃子 第几天 如果第10天 那么桃子数 1否则endfunction 桃子数 第n天的桃子数 第n 1天的桃子数 2 1 第n天的桃子数 第n 1天的桃子数 1 2 明天的桃数 1 2 算法实现 Functiontao daysAsInteger AsIntegerIfdays 10Thentao 1Elsetao tao days 1 1 2EndIfEndFunction Tao 1 tao 2 1 2 Tao 2 tao 3 1 2 Tao 3 tao 4 1 2 Tao 8 tao 9 1 2 Tao 9 tao 10 1 2 Tao 10 1 调用 调用 调用 调用 调用 返回 返回 返回 返回 返回 案例二 斐波那契数列问题 斐波纳契数列 又称黄金分割数列 指的是这样一个数列 1 1 2 3 5 8 13 21 34 55 这个数列从第三项开始 每一项都等于前两项之和 求 数列中的第N项是几 算法规则 1 最初两项值为12 第N项的值是它之前两项之和 求第N个斐波纳切数if是最初两项then斐波纳切数 1else斐波纳切数 前两个斐波纳切数之和endif 案例二 斐波那契数列问题 求第N个斐波纳切数if是最初两项then斐波纳切数 1else斐波纳切数 前两个斐波纳切数之和endif FunctionFib nasInteger asIntegerIfthenFib ElseFib EndifEndFunction n 3 Fib n 2 Fib n 1 1 1 1 2 3 5 8 13 21 34 65 案例三 求最大公约数 早在公元前300年左右 欧几里得就在他的著作 几何原本 中给出了高效的解法 辗转相除法 辗转相除法的方法是用较大的数X除以较小的数Y 得到余数Z如果余数为0 则较小数Y就是两者的最大公约数 例如 27和9的最大公约数就是9如果余数不为0 则较小数Y与余数Z的最大公约数就是X与Y的的最大公约数例如 33和9的最大公约数就是9与6的最大公约数 案例三 求最大公约数 求X与Y的公约数 Z是X除Y得到的余数IfZ为0then公约数 Else公约数 的公约数Endif FunctionGYS xasInteger yasInteger asIntegerDimzasIntegerz IfZ 0thenGYS ElseGYS EndifEndFunction XmodY Y GYS Y Z Y和Z Y 递归 将要处理的问题划分为一个或多个子问题 而处理子问题的方法与处理原问题的方法是一样的 这样的处理方法称为递归 递归算法小结 在程序中 递归算法表现为函数在运行过程中调用了自己 每一次递归调用 在处理问题的规模上都有所缩小在问题的规模极小时 必须能给出直接的解答 求年龄 FunctionAge nAsInteger AsIntegerifn 1thenage 3elseage age n 1 2 2endifEndFunction 求斐波那契数 FunctionFib nasInteger asIntegerIfn 3thenFib 1ElseFib Fib n 2 Fib n 1 EndifEndFunction 从前有座山 山里有座庙 庙里有个老和尚 给小和尚讲故事 故事是什么呢 从前有座山 山里有座庙 庙里有个老和尚 给小和尚讲故事 故事是什么呢 从前有座山 山里有座庙 庙里有个老和尚 给小和尚讲故事 故事是什么呢 再看老和尚的故事 这个过程算不算是递归 怎么改才能算是递归 拓展练习 求n n 1 2 3 4 nn n 1 n1 1 拓展练习 恶魔与农夫 有一位农夫不满于自己的贫困 一天 他正在抱怨上天的不公平 一个恶魔出现在他的眼前 他对农夫说 我可以帮助你 你只要从桥上每走
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 登高作业考试题库及答案
- 酒馆市场前景预测与体验营销策略研究报告
- 长高了小班科学教案反思
- 风电项目可行性方案研究报告
- 香菇 可行性研究报告
- 2025年安徽省建设工程质量检测人员技术能力-桥梁及地下工程专项考试题库(含答案)
- 广西中考物理5年(2021-2025)真题分类汇编:专题07 压强(解析版)
- 2020-2025年证券分析师之发布证券研究报告业务过关检测试卷A卷附答案
- 安徽中考物理5年(2021-2025)真题分类汇编:专题03 质量、密度、压强与浮力综合(原卷版)
- 强制治疗所协议书
- 二十届四中全会测试题及参考答案
- 23G409先张法预应力混凝土管桩
- 提升基层应急能力筑牢防灾减灾救灾人民防线课件
- 企业所得税汇算清缴政策辅导-课件
- 血细胞形态图库
- 建筑消防设施故障维修记录表
- 标准解法体系(5级共76个标准解)
- 完整版天丝织物的染整工艺
- 变电站视频监控系统施工方案
- 【100分值】小学单科成绩各题得分率计算分析表模板
- 聚丙烯工艺综述ppt课件
评论
0/150
提交评论