第27077题 单选题
已知以下Python递归实现的阶乘函数,下列哪个选项是等价的非递归实现?

已知以下Python递归实现的阶乘函数:

def factorial_recursive(n):
    if n ==  or n == 1:
        return 1
    return n * factorial_recursive(n-1)
A
def factorial_non_recursive(n):
    res = 1
    for i in range(2, n+1):
        res *= i
    return res
B
def factorial_non_recursive(n):
    res = 1
    for i in range(1, n):
        res *= i
    return res
C
def factorial_non_recursive(n):
    if n < :
        raise ValueError("n必须为非负整数")
    res = 1
    for i in range(1, n):
        res *= i
    return res
D
def factorial_non_recursive(n):
    if n < :
        raise ValueError("n必须为非负整数")
    stack = []
    while n > :
        stack.append(n)
        n -= 1
    res = 1
    while stack:
        res += stack.pop()
    return res
程序运行统计
暂无判题统计
提交0次 正确率0.00%
答案解析