java学习笔记——java方法03.递归
递归
利用递归可以用简单的程序来解决一些复杂的问题。它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解。
递归结构包括两个部分:
- 递归头:什么时候不调用自身方法。如果没有头,将陷入死循环。
- 递归体:什么时候需要调用自身方法。
例子:用递归求阶乘
public class Demo {
public static void main(String[] args) {
System.out.println(f(5));
}
public static int f (int n){
//递归头
if (n == 1){
return 1;
}else {
//递归体
return n * f(n-1);
}
}
}
注意:小基数可以使用递归,大基数不推荐使用递归,总体来说尽量不要使用递归。