python —— 使用栈结构实现n的阶乘 (n!)

代码:

def f(n):
    if n == 1:
        return 1
    else:
        return n*f(n-1)

# print(f(1000))


stack = []
def f2(n):
    if n == 1:
        return 1
    else:
        stack.append(n)
        return n-1

n = 1000
while True:
    if n == 1:
        break
    else:
        n = f2(n)

s = 1
while len(stack) > 0:
    print(stack)
    e = stack.pop()
    s = s*e
print(s)


运行效果:

image


posted on 2025-12-10 20:32  Angry_Panda  阅读(1)  评论(0)    收藏  举报

导航