斐波那契數列 python 實現

2021-08-21 19:07:08 字數 1329 閱讀 9840

什麼?

找規律找的不錯!!!其實我想說的是:斐波拉契數列!

斐波那契數列/兔子數列.jpg

自從學python,我已經拋棄了計算器。why?因為python比計算器來的快啊!今天要說的斐波那契數列也是,python生成遠比書寫加計算來的快!如果你也想擁有這項牛(zhuang)逼(bi)技能,趕快和我一起學python吧!

python實現斐波那契數列方法一之遞迴:

遞迴(recursion):程式呼叫自身的程式設計技巧。

遞迴滿足2個條件:

def fab(x):

if x==1:

return 1

elif x==2:

return 1

elif x>2:

result=int(fab(x-1))+int(fab(x-2))————這裡的整型轉化似乎有點多餘!

return result

elif x<0:

print ("輸入有誤,請重新輸入!")

number=int(input("請輸入斐波拉契數列的項數:"))

result=fab(number)

print("第 %d項斐波拉契數列為:%d"%(number,result))

python實現斐波那契數列方法二之迭代:

相比於方法一,方法二實現的速度更快哦!

def fab(n):

n1=1

n2=1

n3=2

if n<1:

print("輸入有誤,請重新輸入!")

return -1

while (n-2)>0:

n3=n2+n1————是不是似曾相識呢?排序問題的方法類似哦!

n1=n2

n2=n3

n-=1

return n3

number=int(input("請輸入斐波拉契數列的項數:"))

result=fab(number)

if result != -1:

print ("第 %d項斐波拉契數列為:%d" % (number,result))

- end -

我是傳送門

外行學python( 一 猜數字 )

外行學python( 二 *** )

外行學python( 三 列表 )

外行學python( 四 兔子繁殖問題 )

斐波那契數列 斐波那契數列python實現

斐波那契數列 fibonacci sequence 又稱 分割數列 因數學家列昂納多 斐波那契 leonardoda fibonacci 以兔子繁殖為例子而引入,故又稱為 兔子數列 指的是這樣乙個數列 1 1 2 3 5 8 13 21 34 在數學上,斐波納契數列以如下被以遞推的方法定義 f 1 ...

python實現斐波那契數列

方法二 構造遞迴函式def recur fibo n 斐波那契數列指的是這樣乙個數列 0,1,1,2,3,5,8,13,特別指出 第0項是0,第1項是第乙個1。從第三項開始,每一項都等於前兩項之和。核心 fibo 0 1 for ii in range 2 times 2 fibo ii 1 加入了...

python實現斐波那契數列

1.遞迴方式 寫法最簡潔,但是效率最低,會出現大量的重複計算,時間複雜度o 1.618 n 而且最深度1000 def fib sequence num if num 1or num 2 return 1else return fib sequence num 2 fib sequence num ...