- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
递归算法集合
递归算法集合
1、利用递归原理求1+2+3+4+….+n的值
2、用递归法计算n!,用递归法计算n!可用下述公式表示:
#includestdio.h
int fun(int n)
{
if(n==0||n==1) return 1;
else return n*fun(n-1);
}
void main()
{
int n;
scanf(%d,n);
printf(%d!=%d\n,n,fun(n));
}
3. 利用递归原理求数列s(n)=s(n-1)+s(n-2)的第n项。其中s(1)=s(2)=1。
思考题:
4、利用递归原理求杨辉三角
5、利用递归原理编写汉诺塔游戏。
汉诺塔:汉诺塔(又称河内塔)问题是源于印度一个古
老传说的益智玩具。大梵天创造世界的时候做了三根金刚石
柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘
。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在
另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根
柱子之间一次只能移动一个圆盘。
递归强化练习
[ 2007-10-26 20:05:00 | By: 小草 ]
下面很多题目,都可以用递归来解决的。试试看,也许对你有启发。
-----------------------------
递归基础练习题:
1. 求1+2+3+……+n的值
2. 求1*2*3*……*n的值
3. 小猴子第一天摘下若干桃子,当即吃掉一半,又多吃一个.第二天早上又将剩下的桃子吃一半,又多吃一个.以后每天早上吃前一天剩下的一半另一个.到第10天早上猴子想再吃时发现,只剩下一个桃子了.问第一天猴子共摘多少个桃子?
4. 有雌雄一对兔子,假定过两个月便可繁殖雌雄各一的一对小兔子。问过n个月后共有多少对兔子?
5. 一个人赶着鸭子去每个村庄卖,每经过一个村子卖去所赶鸭子的一半又一只。这样他经过了七个村子后还剩两只鸭子,问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?
6. 著名的菲波拉契(Fibonacci)数列,其第一项为0,第二项为1,从第三项开始,其每一项都是前两项的和。编程求出该数列前N项数据。
7. 求两个数的最大公约数。
8. 求两个数的最小公倍数。
9. 输入一个数,求这个数的各位数字之和。
10. 角谷定理。输入一个自然数,若为偶数,则把它除以2,若为奇数,则把它乘以3加1。经过如此有限次运算后,总可以得到自然数值1。求经过多少次可得到自然数1。
如:输入22,
输出 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1
STEP=16
11. 将十进制转换为二进制。
12. 计算M=max(a,b,c)/[max(a+b,b,c)*max(a,b,b+c)],其中a,b,c由键盘输入。
13. 梯有N阶,上楼可以一步上一阶,也可以一次上二阶。编一个程序,计算共有多少种不同的走法。
14. 某人写了n封信和n个信封,如果所有的信都装错了信封。求所有的信都装错信封共有多少种不同情况?
15. 给出一棵二叉树的中序与后序排列。求出它的先序排列。
16. 求把一个整数n无序划分成k份互不相同的正整数之和的方法总数。
17. 已知一个一维数组A[1..N]。{N50} 又已知一整数M。如能使数组A中任意几个元素之和等于M,则输出YES,反之则为NO。
18. 要求找出具有下列性质的数的个数(包含输入的自然数n):
先输入一个自然数n(n=500),然后对此自然数按照如下方法进行处理:
①. 不作任何处理;
②. 在它的左边加上一个自然数,但该自然数不能超过原数首位数字的一半;
③. 加上数后,继续按此规则进行处理,直到不能再加自然数为止.
样例: 输入: 6
满足条件的数为 6
16
26
126
36
136
输出: 6
19. 用递归的方法求N个数中最大的数及其位置。
20. 写出折半查找的递归算法。
21. 快速排序法。
思考题 1、数学宝塔,从最顶上走到最底层,每次只能走到下一层的左边或右边的数字,求出使所走到的所有数字之和为60的途径。
7
4 6
6 9 3
6 3 7 1
2 5 3 2 8
5 9 4 7 3 2
6 4 1 8 5 6 3
3 9 7 6 8 4 1 5
2 5 7 3 5
您可能关注的文档
最近下载
- 人工挖孔桩有限空间作业专项施工方案-2024.docx
- 2025年社区工作者公共基础知识与社区工作相关知识试卷.docx VIP
- 2025-2026年中国机械加工行业发展现状分析报告(目录) .pdf VIP
- 《GMP物料管理培训》课件.ppt VIP
- 2016款上汽名爵MG3_汽车使用手册用户操作图解驾驶指南车主车辆说明书电子版.pdf VIP
- 1000 Basic English Words—1000核心单词全4册单词带音标.pdf VIP
- 2025年社区工作者招聘考试公共基础知识(社区工作相关知识)题库.docx VIP
- 急性肺水肿患者应急预案及流程.pptx VIP
- 2025年社区工作者招聘考试(公共基础知识+社区工作相关知识)题库.docx VIP
- 智能控制技术专业人才培养方案(高职).pdf VIP
原创力文档


文档评论(0)