赞
踩
一个方法在执行的过程中调用自己,就称为“递归”。
通常把一个大型复杂的问题层层转化为一个原问题相似的规模较小的问题来求解。
让代码简洁。
不太好理解。
如何将原问题转换为子问题
对原问题来进行拆分,拆分成一个个的小问题,而且小问题还要与大问题解法要相同。
必须要有递归的出口。
- public static long sum(int n){
- if(n==1){
- return 1;
- }else{
- return sum(n-1)+n;
- }
- }
-
- public static void main(String[] args) {
- System.out.println(sum(5));
- }
- public static long fac(int n){
- if (0==n||n==1){
- return 1;
- }else{
- return fac(n-1)*n;
- }
- }
- public static void main(String[] args) {
- System.out.println(fac(4));
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。