1 / 56
文档名称:

算法设计与分析—递归算法.ppt

格式:ppt   大小:1,590KB   页数:56页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

算法设计与分析—递归算法.ppt

上传人:aluyuw1 2018/2/28 文件大小:1.55 MB

下载得到文件列表

算法设计与分析—递归算法.ppt

相关文档

文档介绍

文档介绍:第6章递归算法
1
递归的概念
递归算法的执行过程
递归算法的设计方法
递归过程和运行时栈
递归算法的效率分析
递归算法到非递归算法的转换
设计举例

一、在日常生活中,递归一词较常用于描述以自相似方法重复事物的过程。
例如,当两面镜子相互之间近似平行时,镜中嵌套的图像是以无限递归的形式出现的。
2
德罗斯特效应(英语:Droste effect)是递归的一种视觉形式。图中女性手持的物体中有一幅她本人手持同一物体的小图片,进而小图片中还有更小的一幅她手持同一物体的图片,依此类推。
3
二、在数学与计算机科学中,递归是指在函数的定义中使用函数自身的方法。
例:第5个人的年龄比第4个的年龄大2岁,有4个人的年龄比第3个的年龄大2岁,有3个人的年龄比第2个的年龄大2岁,有2个人的年龄比第1个的年龄大2岁,第1个的年龄10岁。
4
例:阶乘的定义。
5
6
在下面二种情况中存在算法调用自己的情况:
(1)问题的定义是递推的
阶乘函数的常见定义是:
7
也可定义为:
写成函数形式,则为:
这种函数定义的方法是用阶乘函数自己本身定义了阶乘函数,称上式为阶乘函数的递推定义式。
8
(2)问题的解法存在自调用
一个典型的例子是在有序数组中查找一个数据元素是否存在的折半查找算法。如下例中查找元素17。
第一次:
下标
0
1
2
3
4
5
6
7
元素值
1
3
4
5
17
18
31
33



low
mid
high
x>a[mid]
第二次:
下标
0
1
2
3
4
5
6
7
元素值
1
3
4
5
17
18
31
33



low
mid
high
x<a[mid]
第三次:
下标
0
1
2
3
4
5
6
7
元素值
1
3
4
5
17
18
31
33

low
high
x=a[mid]
mid
BSrch=4
mid=(low+high)/2
9

例6-1 给出按照阶乘函数的递推定义式计算阶乘函数的递归算法,并给出n = 3时递归算法的执行过程。
设计:按照阶乘函数的递推定义式计算阶乘函数的递归算法如下:
long int Fact(int n)
{ int x;
long int y;
if(n < 0) //n < 0时阶乘无定义
{ printf(“参数错!”);
return -1;
} 
if(n == 0) return 1;
else
{ y = Fact(n - 1); //递归调用
return n * y;
}
}
10
为说明该递归算法的执行过程,设计调用过程如下:
void main(void)
{
long int fn;
  fn = Fact(3);
}
上述代码用实参n = 3调用了递归算法Fact(3),而Fact(3)要通过调用Fact(2)、Fact(2)要通过调用Fact(1)、Fact(1)要通过调用Fact(0)来得出计算结果。Fact(3)的递归调用过程如下图所示,其中,黑色实线箭头表示函数调用,绿色虚线箭头表示函数返回,此函数在返回时函数名将带回返回值。

最近更新

二零二五年度个人家政服务居间费协议 8页

二零二五年度个人古董家具买卖合同 8页

二零二五年度个人健康保险贷款协议范本 7页

二零二五年度个人住宅买卖合同(含房屋质量保.. 8页

二零二五年度个人与农产品销售公司签订的销售.. 8页

中药材炮制的标准化研究-全面剖析 22页

2025年传染病防控常识解析 49页

2025年怎么学开车的实用窍门 6页

二零二五年度三人联营互联网金融服务合同协议.. 9页

2025年怎么写家乡作文 14页

人工智能在肿瘤识别中的应用-全面剖析 23页

2025年怎么做高考语文诗歌鉴赏题 7页

2025年怀念母亲的感人美文:追忆天国的母亲 4页

二零二五医疗损害赔偿和解协议(含医疗事故处.. 8页

2025年快乐过新年的高一学生作文 9页

2025年快乐的植树节优秀作文5篇 6页

砂石采购及供应合同2025 6页

矿山扩建工程度施工合同 7页

2025年志愿服务活动总结精选篇 22页

2025年度高等院校科研岗位聘用合同书 8页

2025年心理部2025新学期工作计划 13页

2025年心理培训感受和心得 12页

2025年心理健康教育的心得体会 37页

2025年度高端人才招聘与培养服务合同 8页

2025年度高科技研发劳动合同模板与知识产权归.. 9页

2025年输血技术与血液安全策略 76页

2025年超声引导PICC置管术前准备要点 9页

艺术舞蹈老师简历模板 1页

服装设计合作协议书 5页

煤炭资源地质勘查设计编写提纲 14页