美文网首页
递归的三步法与最基础递归--n的阶乘

递归的三步法与最基础递归--n的阶乘

作者: 掌灬纹 | 来源:发表于2019-01-25 19:24 被阅读0次

    三步法定递归模型:

    1.找重复 :即找到划分方法 或 递推公式 或 等价转换。

    2.找变量:找变量定递归方法的参数

    3.找边界:一个递归方法必备的结束条件

    拿n的阶乘举例吧 

    1.找重复 :涉及数学层面肯定想到的就是公式, n! = n*(n-1)! , (n-1)! = (n-1)*(n-2)!...

    2.找变量 :n,逐步随问题的划分而变小

    3.找边界 :n! = n*(n-1)*(n-2)....*1 即 n == 1;

    (代码实现)

    import java.util.Scanner;

    public class Main(){

    public static void main(String[] args){

    Scanner sc = new Scanner(System.in);

    int n = sc.nextInt();

    System.out.println(n+"的阶乘为:"+f(n));

    }

    static int f(int n){

    if(n==1)

        return 1;

    return n * f(n-1);

    }

    }

    相关文章

      网友评论

          本文标题:递归的三步法与最基础递归--n的阶乘

          本文链接:https://www.haomeiwen.com/subject/zuyvjqtx.html