更新時間:2021-01-18 來源:黑馬程序員 瀏覽量:
斐波那契數(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=' ')
運行結果:
猜你喜歡:
1024首播|39歲程序員逆襲記:不被年齡定義,AI浪潮里再迎春天
2025-10-241024程序員節(jié)丨10年同行,致敬用代碼改變世界的你
2025-10-24【AI設計】北京143期畢業(yè)僅36天,全員拿下高薪offer!黑馬AI設計連續(xù)6期100%高薪就業(yè)
2025-09-19【跨境電商運營】深圳跨境電商運營畢業(yè)22個工作日,就業(yè)率91%+,最高薪資達13500元
2025-09-19【AI運維】鄭州運維1期就業(yè)班,畢業(yè)14個工作日,班級93%同學已拿到Offer, 一線均薪資 1W+
2025-09-19【AI鴻蒙開發(fā)】上海校區(qū)AI鴻蒙開發(fā)4期5期,距離畢業(yè)21天,就業(yè)率91%,平均薪資14046元
2025-09-19