Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk melaksanakan jujukan Fibonacci menggunakan php

Bagaimana untuk melaksanakan jujukan Fibonacci menggunakan php

青灯夜游
青灯夜游asal
2023-02-24 10:13:414600semak imbas

Kaedah pelaksanaan: 1. Gunakan tatasusunan untuk mencari, sintaks "for($i=0;$i

Bagaimana untuk melaksanakan jujukan Fibonacci menggunakan php

Persekitaran pengendalian tutorial ini: sistem windows7, versi PHP8, komputer DELL G3

Nombor Fibonacci adalah Apakah

Jujukan Fibonacci, juga dikenali sebagai jujukan bahagian emas, kerana ahli matematik Leonardoda Fibonacci menggunakan pembiakan arnab sebagai contoh Ia diperkenalkan, jadi ia juga dipanggil "jujukan arnab", yang merujuk kepada urutan sedemikian:

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

Iaitu: dua nilai pertama adalah kedua-duanya 1, bermula dari digit ketiga, setiap digit ialah semasa Jumlah dua digit pertama

Bagaimana untuk melaksanakan jujukan Fibonacci menggunakan php

Dalam matematik, jujukan Fibonacci ditakrifkan secara rekursif seperti berikut:

F(1)=1,F(2)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 3,n ∈ N*)
  • F: merujuk kepada jujukan semasa

  • n: subskrip lajur eksponen

Baiklah , Selepas memahami jujukan Fibonacci, mari kita lihat bagaimana untuk melaksanakannya menggunakan PHP.

Kaedah 1: Gunakan tatasusunan

untuk memerhati urutan yang diberikan di atas, digabungkan dengan pengetahuan tatasusunan, anda boleh menganalisis:

  • Apabila subskrip tatasusunan ialah 0 atau 1, nilai elemen ialah 1; elemen ialah
    ;

  • Apabila subskrip tatasusunan ialah 3, elemen itu ialah a[0]+a[1];

  • ....a[1]+a[2]

  • Apabila subskrip tatasusunan ialah n, elemennya ialah

  • Ia boleh disimpulkan: a[n-2]+a[n-1];

  • a[0]=1

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

  • Pelaksanaan kod: a[n]=a[n-2]+a[n-1]

  • Output:

<?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);
?>

Sekarang kita telah mempelajari cara menggunakan tatasusunan untuk mencari jujukan Fibonacci, mari kita ambil lihat menggunakan rekursi untuk mencari jujukan Fibonacci.

Bagaimana untuk melaksanakan jujukan Fibonacci menggunakan php

Kaedah 2: Menggunakan rekursi

Output:

<?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);
?>


Kaedah rekursif juga telah dilaksanakan, bukankah ia sangat mudah!

Algoritma rekursif boleh menyelesaikan masalah yang bertanggungjawab menggunakan kod yang lebih pendek, tetapi kecekapan operasinya agak rendah. Bagaimana untuk melaksanakan jujukan Fibonacci menggunakan php

Pembelajaran yang disyorkan: "

Tutorial Video PHP

"

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan jujukan Fibonacci menggunakan php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn