zoukankan      html  css  js  c++  java
  • 斐波那契数列中获取第n个数据值

    class Fibonacci
    {

    /**
     * Description:迭代方法获取fibonacci第n项数值
     *
     * @param int $n
     * @return int
     */
    public static function fib_interation($n)
    {
        $fib = array(); // 定义fibonacci数组
    
        if ($n < 0) {
            return 0;
        }
    
        for ($fib[0] = 0, $fib[1] = 1, $i = 2; $i <= $n; $i++) {
            $fib[$i] = $fib[$i - 1] + $fib[$i - 2];
        }
    
        return $fib[$n];
    }
    
    /**
     * Description:递归方法获取fibonacci第n项数值
     *
     * @param int $n
     * @return int
     */
    public static function fib_recursive($n)
    {
        if ($n <= 0) {
            return 0;
        } elseif ($n == 1) {
            return 1;
        } else {
            return self::fib_recursive($n - 1) + self::fib_recursive($n - 2);
        }
    }
    

    }

    $fib1 = Fibonacci::fib_interation(5);
    echo $fib1 . " ";

    $fib2 = Fibonacci::fib_recursive(5);
    echo $fib2 . " ";

  • 相关阅读:
    个人博客
    个人博客
    个人博客
    个人博客
    个人博客
    团队作业—个人记录
    4.21
    4.20
    4.19
    4.18
  • 原文地址:https://www.cnblogs.com/ryanlamp/p/9950333.html
Copyright © 2011-2022 走看看