java递归
递归思想:
- 递归的基本思想就是“自己调用自己”,或直接或间接,我们也可以简单地理解成这是一个不知道循环次数的循环。
递归结构:
-
递归出口:一般递归尽头和if语句配合使用,判断什么时候不调用自身了,如果没有递归尽头,会陷入一个死循环中
-
递归体:就是调用自身的语句
//递归思想求阶乘问题
public class Recursion
{
/*
* 1.递归:就是自己调用自己,但是如果没终止条件会造成死循环,
* 所以递归代码里要有结束自调自的条件,
* 这样就创造了有限次的循环(虽然代码中你看不到for或foreach但是有循环发生)
*
* 2.递归算法解决问题的特点
* 2.1:递归就是方法里调用自身。
* 2.2:在使用递归策略时,必须有一个明确的递归结束条件,称为递归出口。
* 2.3:递归算法代码显得很简洁,但递归算法解题的运行效率较低,
* 所以不提倡用递归设计程序。
*/
/*
* 1. 演示