斐波那契数列
2022-11-14 本文已影响0人
测试探索
第一种方法
a = 0
b = 1
while b < 100:
print(b, end=",")
a, b = b, a+b
第二种方法
def func(n):
if n == 1 or n == 2:
return 1
else:
return func(n-1) + func(n-2)
# 处理
def get_all_numbs():
datas = []
max_value = 0
count = 1
while max_value < 100:
max_value = func(count)
if max_value >= 100:
break
datas.append(max_value)
count += 1
return datas
print(get_all_numbs())
第三种方法
from functools import lru_cache
@lru_cache(maxsize=128)
def func3(n):
if n == 1 or n == 2:
return 1
else:
return func3(n - 1) + func3(n - 2)
image.png