教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

python如何實現(xiàn)斐波那契數(shù)列?【Python培訓】

更新時間:2021年01月18日16時10分 來源:傳智教育 瀏覽次數(shù):

好口碑IT培訓

斐波那契數(shù)列(Fibonacci sequence),又稱黃金分割數(shù)列、因數(shù)學家萊昂納多·斐波那契(Leonardoda Fibonacci)以兔子繁殖為例子而引入,故又稱為“兔子數(shù)列”。斐波那契數(shù)列指的是這樣一個數(shù)列 0, 1, 1, 2, 3, 5, 8, 13,特別指出:第0項是0,第1項是第一個1。從第三項開始,每一項都等于前兩項之和。

下面介紹兩種通過python實現(xiàn)斐波那契數(shù)列的方法。

1、遞歸法:

def fs(n):
    assert n >= 0, "n > 0"
    if n <= 1:
        return n
    return fs(n-1)+fs(n-2)

# 獲得斐波那契數(shù)列,項數(shù)20
for i in range(1, 20):
    print(fs(i), end=' ')



2、遞推法

# 第一種寫法
def fs_loop_for(n):
    a, b = 0, 1
    for _ in range(n):
        a, b = b, a + b
    return a
    
    
# 獲得斐波那契數(shù)列,項數(shù)20
for i in range(20):
    print(fs_loop_for(i), end=' ')


# 第二種寫法
def fs_loop_while(n):
    a, b = 0, 1
    while n > 0:
        a, b = b, a + b
        n -= 1
    return a
    


# 獲得斐波那契數(shù)列,項數(shù)20
for i in range(20):
    print(fs_loop_while(i), end=' ')


運行結(jié)果:

1610956571880_斐波那契數(shù)列.png



猜你喜歡:

Python隨機函數(shù)random用法介紹

python是什么?python的用途

Python入門到精通視頻教程

傳智教育高級Python開發(fā)培訓課程

0 分享到:
和我們在線交談!