递归算法心得

来源:互联网 发布:mac不能更新软件 编辑:程序博客网 时间:2024/06/02 20:25

其实原理,老师也都讲了,大家也都懂。

我这里说一些个人理解的技巧。

其实递归主要是找到数字之间的规律,因此在写递归体时,应该找出第n项与第(n-1)和(n-2)的关系,就可以列出递归体来。

下面给大家个例子。

(1)计算n的阶乘

代码如下:
public class TestRecursion {
public static long  test01(int n){
if(n==1){
return 1;
}else{
return n*test01(n-1);
}
}
(2)一个古典问题:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

public static long test02(int m){
if(m==1||m==2){
return 1;
}else{
return test02(m-1)+test02(m-2);
}
}

本人也是新手,在学习中,如果文章中,有什么不对的地方,请谅解。