程序分析
递归算法(英语:recursion algorithm
)在计算机科学中是指一种通过重复将问题分解为同类的子问题而解决问题的方法。
递归算法——百度百科.
代码实现
定义无返回值的方法
public class Test_1 {
static long num = 1;
public static void main(String[] args) {
getFactorial(5);
System.out.println("5! = " + num);
}
private static void getFactorial(int i) {
if (i > 0) {
num *= i;
i--;
getFactorial(i);
}
}
}
定义有返回值的方法
public class Test_2 {
public static void main(String[] args) {
System.out.println("5! = " + getFactorial(5));
}
private static long getFactorial(int i) {
if (i == 0) {
return 1;
} else {
return i*getFactorial(i - 1);
}
}
}