zoukankan      html  css  js  c++  java
  • 斐波那契数列

    斐波那契数列

    • (Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……,简单来说,斐波那契数列就是一系列元素,前两个元素相加得到下一个元素,从0和1开始。
    • 如何用PHP实现斐波那契数列。给定一个数字n,我们需要找到斐波那契数列直到第n项
      例子:
      输入:10输出:0 1 1 2 3 5 8 13 21 34
      输入:15输出:0 1 1 2 3 5 8 13 21 34 55 89 144 233 377

    递归方式

    递归是我们重复调用相同函数直到匹配基本条件以结束递归的方式。

    function Fibonacci($number){
        if ($number == 0)
            return 0;
        else if ($number == 1)
            return 1;
        else
            return (Fibonacci($number-1) + Fibonacci($number-2));
    }
    $number = 10;
    for ($counter = 0;$counter < $number;$counter++) {
        echo Fibonacci($counter),' ';
    }
    

    迭代方式

    首先,我们将第一个和第二个数字初始化为0和1.然后,我们打印第一个和第二个数字。然后我们将流程发送到迭代while循环,我们通过添加前两个数字得到下一个数字,同时我们将第一个数字与第二个数字交换,第二个数字与第三个数字交换。

    function Fibonacci($n) {
        $num1 = 0;
        $num2 = 1;
        $counter = 0;
        while ($counter < $n) {
            echo ' '.$num1;
            $num3 = $num2 + $num1;
            $num1 = $num2;
            $num2 = $num3;
            $counter = $counter + 1;
        }
    }
    
  • 相关阅读:
    解压版(绿色版)Tomcat配置
    安装、设置与启动MySql绿色版的方法
    JDBC连接MySQL出现的问题
    可变长数组在GCC编译器中的实现
    关于取余
    java中类和接口的一点整理
    orgmode 写cnblogs 博文(一些问题的解决)
    This file is about changes in Emacs version 24.
    autocomplete插件使用中遇到的问题及原因
    junit&jmockit工具熟悉记录
  • 原文地址:https://www.cnblogs.com/mxyindex/p/11051001.html
Copyright © 2011-2022 走看看