參加了原力計畫…暫時想不出寫什麼文章好,看到斐波那契數列的例項似乎有點少,那就通過這個例子來講一講這個遞迴與迭代的一些介紹吧。
首先引用百科的一段介紹:
下面我們看一下php使用遞迴與迭代方式如何實現這一系列計算:
使用遞迴必須有乙個簡潔明確的結束條件。
每次的遞迴都需要是讓規模繼續變小的。
遞迴一旦層次過多深度過大會導致棧的溢位。
除此之外就是遞迴的效率並不算很高,所以一般能避免不用的話就盡量不使用遞迴了。那為了方便檢驗與檢視,一般退出條件可以放置到開頭處即可。
<?php
functionfs(
$n)print_r(fs
(20))
;
上面通過使用三元運算簡寫了一下,等同下方寫法:
<?php
functionfs(
$n)//遞迴方式呼叫方法
returnfs(
$n-1)
+fs($n
-2);
}print_r(fs
(20))
;
那麼接下來第二種的話就是上面說的迭代了,
我是迭代
該題的寫法可以使用迭代來完成,具體源**如下:
<?php
//這裡我申明一下方法方便呼叫
functionfs(
$n=20)
print_r(fs
(20))
;
最終輸出結果可為:
array([
0]=>0,
[1]=
>1,
[2]=
>1,
[3]=
>2,
[4]=
>3,
[5]=
>5,
[6]=
>8,
[7]=
>13,
[8]=
>21,
[9]=
>34,
[10]=
>55,
[11]=
>89,
[12]=
>
144,[13
]=>
233,[14
]=>
377,[15
]=>
610,[16
]=>
987,[17
]=>
1597,[
18]=>
2584,[
19]=>
4181,.
....
.)
手機端寫博文,不知道怎麼存草稿,編寫邊發布吧。 斐波那契數列 斐波那契數列python實現
斐波那契數列 fibonacci sequence 又稱 分割數列 因數學家列昂納多 斐波那契 leonardoda fibonacci 以兔子繁殖為例子而引入,故又稱為 兔子數列 指的是這樣乙個數列 1 1 2 3 5 8 13 21 34 在數學上,斐波納契數列以如下被以遞推的方法定義 f 1 ...
迴圈斐波那契數列 斐波那契數列應用
什麼是斐波那契數列 斐波那契數列指的是這樣乙個數列 1,1,2,3,5,8,13,21,34,55,89,144 這個數列從第3項開始,每一項都等於前兩項之和 台階問題 有一段樓梯有10級台階,規定每一步只能跨一級或兩級,要登上第10級台階有幾種不同的走法?這就是乙個斐波那契數列 登上第一級台階有一...
斐波那契數列
1 題目描述 大家都知道斐波那契數列,現在要求輸入乙個整數n,請你輸出斐波那契數列的第n項。斐波那契數列的定義如下 輸入 輸入可能包含多個測試樣例,對於每個測試案例,輸入包括乙個整數n 1 n 70 輸出 對應每個測試案例,輸出第n項斐波那契數列的值。2 這是九度上的乙個題,要求時間限制1秒,整數的...