def fibo(num):
if num == 1:
return 1
elif num == 0:
return 0
return fibo(num-1) + fibo(num - 2)
尾部递归, 用另外两个参数记录之前的值,防止重复计算
# 尾部递归
def fibo(a, b, c):
if a == 1:
return c
return fibo(a - 1, c, b + c)
def fibo(num):
if num == 1:
return 1
elif num == 0:
return 0
return fibo(num-1) + fibo(num - 2)
尾部递归, 用另外两个参数记录之前的值,防止重复计算
# 尾部递归
def fibo(a, b, c):
if a == 1:
return c
return fibo(a - 1, c, b + c)