亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    PHP和黃金分割數(shù)列的完美邂逅(不可錯過)

    生活中,我們用肉眼分辨為美的事物,常常神奇地包含了黃金分割比,此時就不得不感嘆一下:數(shù)學(xué)的美麗無處不在。而黃金分割數(shù)列(又稱斐波那契數(shù)列)的后一項(xiàng)與前一項(xiàng)比值的極限就是二分之根號五減一,約等于0.618(即黃金分割比例)。那么使用PHP要如何實(shí)現(xiàn)黃金分割數(shù)列呢,不急,我們慢慢來了解。

    首先我們來了解一下黃金分割數(shù)列(即斐波那契數(shù)列):

    斐波那契數(shù)列指的是這樣一個數(shù)列:

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

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

    規(guī)律公式為:

    Fn = F(n-1) + F(n+1)

    • F:指當(dāng)前這個數(shù)列

    • n:指數(shù)列的下標(biāo)

    好了,了解了黃金分割數(shù)列(斐波那契數(shù)列),下面我們來了解一下使用PHP實(shí)現(xiàn)的方法。

    方法1:利用數(shù)組

    觀察上面給出的數(shù)列,結(jié)合數(shù)組知識,可以分析出:

    • 數(shù)組下標(biāo)為0或1時,元素的值為1;

    • 數(shù)組下標(biāo)為2時,元素是a[0]+a[1];

    • 數(shù)組下標(biāo)為3時,元素是a[1]+a[2];

    • …..

    • 數(shù)組下標(biāo)為n時,元素是a[n-2]+a[n-1];

    可以得出:

    • a[0]=1

    • a[1]=2

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

    代碼實(shí)現(xiàn):

    <?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 "斐波那契數(shù)列前10位:"; test(10); echo "<br>斐波那契數(shù)列前11位:"; test(11); echo "<br>斐波那契數(shù)列前12位:"; test(12); ?>

    輸出:

    PHP和黃金分割數(shù)列的完美邂逅(不可錯過)

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

    方法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 "斐波那契數(shù)列第10位:" . fbnq(10); echo "<br>斐波那契數(shù)列第11位:" . fbnq(11); echo "<br>斐波那契數(shù)列第12位:" . fbnq(12); ?>

    輸出:

    PHP和黃金分割數(shù)列的完美邂逅(不可錯過)

    遞歸法也實(shí)現(xiàn)出來了,是不是很簡單!

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

    好了就說到這里了,有其他想知道的,可以點(diǎn)擊這個哦?!?→php視頻教程

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號