Maison >développement back-end >tutoriel php >PHP implémente la méthode de séquence de Fibonacci

PHP implémente la méthode de séquence de Fibonacci

小云云
小云云original
2017-12-13 10:07:355796parcourir

本文主要介绍了php实现斐波那契数列代码分享,具有一定借鉴价值,需要的朋友可以参考下,希望能帮助到大家。

斐波那契数列指的是这样一个数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368........

这个数列从第3项开始,每一项都等于前两项之和。

F0=0,F1=1,Fn=F(n-1)+F(n-2)

递归版和非递归版。


<?php 
function fib($n){ 
  $array = array(); 
  $array[0] = 1; 
  $array[1] = 1; 
  for($i=2;$i<$n;$i++){ 
    $array[$i] = $array[$i-1]+$array[$i-2]; 
  } 
  print_r($array); 
} 
fib(10); 
echo "\n------------------\n"; 
function fib_recursive($n){ 
  if($n==1||$n==2){return 1;} 
  else{ 
    return fib_recursive($n-1)+fib_recursive($n-2); 
  } 
} 
echo fib_recursive(10); 
?>


作为C和java的程序猿,在第一次在写非递归的时候,忘记了变量前加$,悲催。

输出结果


Array 
( 
  [0] => 1 
  [1] => 1 
  [2] => 2 
  [3] => 3 
  [4] => 5 
  [5] => 8 
  [6] => 13 
  [7] => 21 
  [8] => 34 
  [9] => 55 
) 
------------------ 
55


打击学会了吗?赶紧动手尝试一下吧。

相关推荐:

详解python输出斐波那契数列

js实现斐波那契数列

递归与递推实现斐波那契数列算法

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn