Fibonacci数列的两种实现方式

时间:2023-03-10 06:50:57
Fibonacci数列的两种实现方式

斐波那契数列的形式为:1,1,2,3,5,8,13,21......从第三项开始,后面的每一项都是前面两项的和。

实现的方式有一下 两种:

一:递归方式实现

def fib(n):
if n <1:
print('数值错误!')
return -1
if n ==1 or n ==2:
return 1
return fib(n-1) + fib(n-2)
f = fib(10)
print(f)

当然这种方式的输出为55,是直接计算出某一项的数值的。

二:简单的赋值语句逻辑实现

def fib(max):
n,a,b = 0,0,1
while n < max:
print(b)
a,b = b,a+b
n += 1
fib(10)

这种方式输出为:1,1,2,3,5,8,13,21,34,55。可以看到中间值,当然也可以在while结束后只返回最终值。