如何递归计算2n的阶乘?

时间:2018-10-30 12:35:41

标签: recursion

我遇到了以下问题:n是正非零整数,我必须计算乘积(2n)!
我该如何递归执行

1 个答案:

答案 0 :(得分:0)

好的,让我向您解释问题以及如何解决它:

我们将创建一个计算(2n)的函数! (这意味着我们将计算(2n)(2n-1)(2n-2)... * 2 * 1

所以停止条件是当(2n)达到1时,并且(2n)大于1时,做2n *(2n-1)。

//you have to pass (2n) into the argument
public static int calculate(int valueOf2n) {
    //stop condition
    if(valueOf2n == 1) {
        return 1;
    }
    else {
        return valueOf2n*calculate(valueOf2n - 1);
    }
}