python递归方式和普通方式实现输出和查询斐波那契数列
生活随笔
收集整理的這篇文章主要介紹了
python递归方式和普通方式实现输出和查询斐波那契数列
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
斐波那契數列
斐波那契數列(Fibonacci sequence),是從1,1開始,后面每一項等于前面兩項之和。
如果為了方便可以用遞歸實現,要是為了性能更好就用循環。
遞歸方式實現生成前30個斐波那契數
list = [] for i in range(30):if i == 0 or i == 1:list.append(1)# print(f"第{i+1}個斐波那契數是:{list[i]}")else:list.append(list[i-2]+list[i-1])# print(f"第{i+1}個斐波那契數是:{list[i]}") print(list,end=",")普通方式實現生成前1000以內的斐波那契數
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:579817333 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' a = 0 b = 1 while b < 1000:print(b, end=" , ")a,b = b, a+b遞歸方式實現用戶輸入查詢第n個斐波那契數–此種方式當查詢的數據比較大時會反應比較慢
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:579817333 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' def fibona(n):return 1 if n <= 2 else fibona((n-1))+fibona(n-2) n = int(input("請輸入你要查的第幾個斐波那契數:")) print(f"你要查詢的第{n}個斐波那契數是:{fibona(n)}")普通方式實現用戶輸入查詢第n個斐波那契數–此種方式性能比較好!
step = int(input("請輸入你要查的第幾個斐波那契數:")) x,y = 1,1 for i in range(step-1):x,y = y,x+y print(f"你要查詢的第{step}個斐波那契數是:{x}")總結
以上是生活随笔為你收集整理的python递归方式和普通方式实现输出和查询斐波那契数列的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python列表的复制,扯一下浅拷贝与深
- 下一篇: Python list,tuple,di