斐波那契数列又称兔子数列,是指这样一个数列:0,1,1,2,3,5,8,13,21……
斐波那契数列以递归的方法定义:F(1)= 1,F(2)= 1, F(n) = F(n-1)+ F(n-2)
(n>=2,n∈N*)
# 递归法
def fib(n):
if n == 0:
return 0
elif n == 1:
return 1
else:
return fib(n-1) + fib(n-2)
print(fib(6))
# 迭代法
def fib(n):
if n == 0:
return 0
elif n == 1:
return 1
else:
a, b = 0, 1
# 使用'_'表示我们不关心循环变量的具体值,只关心循环的次数(也可用i)
for _ in range(2, n+1):
a, b = b, a+b
return b
print(fib(6))