fibonacci數列
1,1,2,3,5,8,13,21,55,.......
第一個及第二個數字是1
第三個以後的數字是前面兩個數字相加後的和
求fibonacci第n個數字的解法
使用遞迴的解法
function fibonacci($n){
if($n==1 ||$n==2){
return 1;
}else{
return fibonacci($n-1)+fibonacci($n-2);
}
}
echo fibonacci(10);
在我的機器上,如果代入fibonacci(40)
機器就會超過允許的執行時間,一個小小的程式,竟然耗用那麼多的時間,實在是可怕。
下面這行程式是一個無窮迴圈,會造成一樣的結果。
while(1){}
1 則留言:
實在是可怕。
張貼留言