递归小结
来源:互联网 发布:mac恢复单一分区 编辑:程序博客网 时间:2024/05/20 13:12
递归
在方法内部调用方法本身的现象
注意事项
递归调用必须要有出口,否则就会死递归内存溢出。
递归的次数不宜过多,过多的话有可能会出现内存溢出。
构造方法不能递归调用。
递归求阶乘
public class DiGuiDemo {
public static void main(String[] args) {
int num = 5;
System.out.println(jc(num));
}
public static int jc(int n) {
if (n == 1) {
return 1;
} else {
return n * jc(n - 1);
}
}
}
经典案例:
有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问第二十个月的兔子对数为多少?
通过分析我们得到这样的一个数列
1,1,2,3,5,8,13,21,...
出口:第一项和第二项是已知的。
规律:从第三项开始,每一项是前两项之和。
public class DiGuiDemo3 {
public static void main(String[] args) {
System.out.println(fun(20));
}
public static int fun(int n) {
if (n == 1 || n == 2) {
return 1;
} else {
return fun(n - 1) + fun(n - 2);
}
}
}
0 0
- 递归小结
- 递归小结
- 递归小结
- 递归小结
- 递归的小结
- 递归算法小结
- 黑马程序员---递归小结
- 递归算法小结
- 递归--清橙 小结
- java递归算法小结
- 数据结构—递归小结
- JAVA递归算法实例小结
- 递归与递推小结
- Python小结点&递归例子
- C语言递归方法小结
- JAVA递归算法实例小结
- 【C语言】递归练习题小结
- 关于二叉树中的递归小结
- UICollectionView的学习
- set和map总结
- ubuntu15.04 qt5.4.2连接mysql
- 新到无线互联学习ios的感慨
- 【thinkphp3.1.x】thinkphp3.1.x中有关memcache缓存相关的文件
- 递归小结
- 38. 数字在排序数组中出现的次数
- Notepad++ 打开文件报错load langs.xml
- C# 相对路径(整合)
- VMWare10下基于Ubuntu14搭建Hadoop-1.2.1集群
- xUtils解析
- spark1.4.0基于yarn的安装心得体会
- 读取XML文件并生成DataTable
- piwik阅读(整体结构)