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)的递归调用过程如下图所示,其中,黑色实线箭头表示函数调用,绿色虚线箭头表示函数返回,此函数在返回时函数名将带回返回值。

最近更新

2025年度市政绿化苗木栽植与生态平衡合同 9页

2025年度家庭私人家教定制方案合同 9页

酸碱催化剂及其催化作用 47页

2025年度大数据分析服务比例分成合同 8页

2025年度城市核心地段手房租赁承包管理协议 9页

酒店投诉处理技巧培训 84页

2025年度员工综合素质教育培训服务合同 9页

2025年度厂房拆除与建筑废弃物环保处理技术研.. 10页

2025年度医师医疗信息安全管理聘用合同 8页

2025年度分手协议书模板:分手后共同债务承担.. 8页

2025年度农产品快速配送道路运输服务合同 10页

2025年度公司合规管理及法律事务处理合作协议.. 11页

2025年度健康养生中心会员服务合同简易版 8页

最新个人租房合同范本 7页

2025年度企业培训与人才发展服务合同 9页

部分电子表格处理 89页

2025年度乡村旅游用地转让承包管理协议 9页

智能制造设备技术合作合同(第一部分) 6页

遗传病和人类健康 28页

新版劳动合同的四大法律特征解析 6页

新房交付质量保证金补充合同 5页

散货及快件出口运输代理合同范本 6页

教师岗位的劳动合同范本 7页

政府债券债务转让合同全文 6页

文化创意产品海运合同范本3篇 50页

轮胎式工程机械驱动桥 38页

教育玩具物流交易协议3篇 51页

教育大厦装修合同模板3篇 55页

教育培训企业股权居间合同3篇 49页

教学楼装修解除通知书3篇 53页