大家好,我做了一个递归阶乘,想和普通的阶乘做个比较,问题是它只达到了5这个数字,在那里它就被破坏了。
错误。递归错误:调用Python对象时超过了最大递归深度
import time
def factorial(n):
res=1
while n>1:
res*=n
return res
def factorial_r(n):
print(n)
if n==1:
return 1
return n*factorial_r(n-1)
if __name__=="__main__":
n=1000
c=time.time()
factorial(n)
f = time.time()
print(f-c)
c =time.time()
factorial_r(n)
f = time.time()
print(f-c)
它是阶乘_r
是否有什么我没有理解好的地方? 我做错了什么?