编写一个函数,实现斐波那契数列

推荐答案

-- -------------------- ---- -------
-------- ------------ -
    -- -- -- -- ------ --
    -- -- --- -- ------ --

    --- - - -- - - --
    --- ---- - - -- - -- -- ---- -
        --- ---- - - - --
        - - --
        - - -----
    -
    ------ --
-

本题详细解读

斐波那契数列简介

斐波那契数列是一个经典的数学问题,数列中的每个数字都是前两个数字的和。数列的前几项如下:

代码解析

  1. 边界条件处理

    • 如果 n <= 0,返回 0,因为斐波那契数列的第0项是0。
    • 如果 n === 1,返回 1,因为斐波那契数列的第1项是1。
  2. 迭代计算

    • 使用两个变量 ab 来存储前两个斐波那契数。
    • 通过循环从第2项开始计算,每次迭代更新 ab 的值,直到计算到第 n 项。
  3. 返回结果

    • 最终返回 b,即第 n 项的斐波那契数。

时间复杂度

  • 该算法的时间复杂度为 O(n),因为只需要一次循环即可计算出第 n 项的斐波那契数。

空间复杂度

  • 该算法的空间复杂度为 O(1),因为只使用了常数个额外空间来存储中间结果。

适用场景

  • 该算法适用于需要计算斐波那契数列中某一项的场景,尤其是当 n 较大时,迭代方法比递归方法更高效。
纠错
反馈