一、什么是方法递归?
- 递归是一种算法。
- 从形式上说,方法调用自身的形式就是方法递归。
1.方法递归的形式
- 直接递归:方法自己调用自己。
- 间接递归:方法调用其它方法,其它方法又回调方法自己。
2.使用方法递归时的注意事项
- 递归如果没有控制好终止条件,会出现死循环,导致栈内存溢出。
3.设计递归算法的时候要考虑:
1.递归的公式是什么,例如求阶乘的递归公式:f(n) = n * f(n-1)
2.递归的终结点是什么,例如,求阶乘中,明确设置 f(1) = 1,也就是说f(1)不需要再通过递归公式计算。
3.递归的方向必须走向终结点,例如,求3的阶乘:f(3) = 3 * f(2) = 3 * 2 * f(1) = 3 * 2 * 1 = 6