91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何用php實現斐波那契數列

發布時間:2023-02-24 10:39:41 來源:億速云 閱讀:148 作者:iii 欄目:編程語言

這篇文章主要介紹了如何用php實現斐波那契數列的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇如何用php實現斐波那契數列文章都會有所收獲,下面我們一起來看看吧。

實現方法:1、用數組來求,語法“for($i=0;$i<$n;$i++){if($i==0||$i==1){$arr[$i]=1;}else{$arr[$i]=$arr[$i-1]+$arr[$i-2];}echo $arr[$i];}”;2、用遞歸,語法“f($n){if($n==1||$n==2){return 1;}return f($n-1)+f($n-2);}}”。

斐波那契數是什么

斐波那契數列(Fibonacci sequence),又稱黃金分割數列、因數學家列昂納多·斐波那契(Leonardoda Fibonacci)以兔子繁殖為例子而引入,故又稱為“兔子數列”,指的是這樣一個數列:

1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765.......

即:前兩個值都為1,從第三位開始,每一位都是當前位前兩位的和

如何用php實現斐波那契數列

在數學上,斐波那契數列以如下被以遞推的方法定義:

F(1)=1,F(2)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 3,n ∈ N*)

  • F:指當前這個數列

  • n:指數列的下標

好了,了解了斐波那契數列,下面我們來了解一下使用PHP實現的方法。

方法1:利用數組

觀察上面給出的數列,結合數組知識,可以分析出:

  • 數組下標為0或1時,元素的值為1

  • 數組下標為2時,元素是a[0]+a[1];

  • 數組下標為3時,元素是a[1]+a[2];

  • .....

  • 數組下標為n時,元素是a[n-2]+a[n-1];

可以得出:

  • a[0]=1

  • a[1]=2

  • a[n]=a[n-2]+a[n-1]   (n>2)

代碼實現:

<?php
header("Content-type:text/html;charset=utf-8");
function test($num){
    $arr=[];
    for($i=0;$i<$num;$i++)
    {
        if($i==0 || $i==1){
            $arr[$i]=1;
        }else{
            $arr[$i]=$arr[$i-1]+$arr[$i-2];
        }
		echo $arr[$i]." ";
    }
}
echo "斐波那契數列前10位:";
test(10);
echo "<br>斐波那契數列前11位:";
test(11);
echo "<br>斐波那契數列前12位:";
test(12);
?>

輸出:

如何用php實現斐波那契數列

了解了如何利用數組來求斐波那契數列,下面我們來看看利用遞歸來求斐波那契數列。

方法2:使用遞歸

<?php
header("Content-type:text/html;charset=utf-8");
function fbnq($n) {
	if ($n <= 0) {
		return 0;
	}
	if ($n == 1 || $n == 2) {
		return 1;
	}
	return fbnq($n - 1) + fbnq($n - 2);
}

echo "斐波那契數列第10位:" . fbnq(10);
echo "<br>斐波那契數列第11位:" . fbnq(11);
echo "<br>斐波那契數列第12位:" . fbnq(12);
?>

輸出:

如何用php實現斐波那契數列

遞歸法也實現出來了,是不是很簡單!

遞歸算法可以將一個負責的問題使用較短的代碼將問題解決出來,但是運行的效率比較低。

關于“如何用php實現斐波那契數列”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“如何用php實現斐波那契數列”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

德惠市| 五家渠市| 湟中县| 东兴市| 清河县| 成都市| 怀柔区| 昌邑市| 松溪县| 岚皋县| 桦川县| 漳浦县| 新郑市| 崇阳县| 玉林市| 鄄城县| 休宁县| 商河县| 安徽省| 怀来县| 青铜峡市| 怀仁县| 鲜城| 于田县| 南召县| 静安区| 咸阳市| 柘城县| 拉孜县| 即墨市| 皋兰县| 苍梧县| 泾阳县| 陵水| 万载县| 宜兰市| 鹤峰县| 额敏县| 大田县| 威远县| 历史|