斐波那契数列

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
上一篇下一篇

猜你喜欢

热点阅读