递归是一种常见的解决问题的方法,即把问题逐渐简单化。
递归的基本思想就是”自己调用自己”,一个使用递归技术的方法将会直接或者间接的调用自己。
递归结构包括俩个部分:
定义递归头:解答:什么时候不调用自身方法。如果没有头,将陷入死循环。
递归体:解答:什么时候需要调用自身方法。
例如:
求使用递归算法求阶乘实例代码:
public class TestRecursion {
public static long factorial(int n){
if(n==1){
return 1;
}else{
return n*factorial(n-1);
}
}
public static void main(String[] args) {
System.out.println(factorial(10));
}
}