编写非递归算法来计算n阶乘

-6 java algorithm recursion

我在编写用于计算n的代码时遇到问题!没有递归.我知道如何在循环中执行它,但我不知道如何非递归地执行它.

procedure factorial

if n = 1 or n = 0
return 1
if n>1
return(n*factorial(n-1))
end
Run Code Online (Sandbox Code Playgroud)

Anu*_*oob 8

这是一个迭代解决方案:

int factorial(int n) {
    int f = 1;
    for(int i=1;i<=n;i++) {
        f *= i;
    }
    return f;
}
Run Code Online (Sandbox Code Playgroud)

  • 一个糟糕的问题很好的答案,+ 1 (2认同)