浏览 1282 次
锁定老帖子 主题:递归的简单例子
精华帖 (0) :: 良好帖 (0) :: 新手帖 (1) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-04-28
最后修改:2009-04-28
输出如下序列:1 3 6 10 15 21 28 36 45 55 ,观察规律,可以写出如下代码(可以使用递归,也可以不使用):
public class RecursionExample { public static void main(String[] args) { //方法一 // int sum = 0; // for(int i=0; i<10; i++) // { // sum = sum + i + 1; // System.out.print(sum + " "); // } // System.out.println(); //方法二 // int Size = 10; // int[] a = new int[Size]; // a[0] = 1; // for(int i=1; i<a.length; i++) // a[i] = a[i-1] + i + 1; // for(int i=0; i<a.length; i++) // System.out.print(a[i] + " "); // System.out.println(); //方法三:使用递归,输出所有结果,可把下面Compute()方法中的输出注释掉 // int N = 10; // for(int i=0; i<N; i++) // System.out.print(Compute(i+1) + " "); // System.out.println(); //方便调试、跟踪,也便于理解 int result = Compute(5); System.out.println("The result is " + result); } public static int Compute(int n) { System.out.println("Entering : n=" + n); if(n == 1) { System.out.println("Returning 1"); return 1; } else { int temp = n + Compute(n-1); System.out.println("Returning " + temp); return temp; } } }
输出结果如下:
Entering : n=5 Entering : n=4 Entering : n=3 Entering : n=2 Entering : n=1 Returning 1 Returning 3 Returning 6 Returning 10 Returning 15 The result is 15
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |