📜  斐波那契递归 javascript (1)

📅  最后修改于: 2023-12-03 14:55:03.654000             🧑  作者: Mango

斐波那契数列的递归实现

斐波那契数列是一列数字,其中每个数都是前两个数的和。例如,斐波那契数列的前十个数字是:0, 1, 1, 2, 3, 5, 8, 13, 21, 34。

在 JavaScript 中,斐波那契数列可以使用递归来实现。递归是一种自己调用自己的函数。在这个算法中,我们定义一个函数 fib(n) 来计算斐波那契序列的第 n 个数字。在一次递归中,该函数将调用自身两次来计算前两个数字的和,并将它们相加以获得下一个数字。

以下是一个 JavaScript 中的递归实现。

function fib(n) {
  if (n === 0) {
    return 0;
  } else if (n === 1) {
    return 1;
  } else {
    return fib(n - 1) + fib(n - 2);
  }
}

在上面的代码中,我们定义了一个函数 fib(n),其中的 if/else 语句用于处理基本情况,即当 n 为 0 或 1 时直接返回数字 0 或 1。对于其他情况,即当 n 大于 1 时,我们将用递归调用 fib(n - 1)fib(n - 2) 来计算斐波那契数列的前两个数字的和。

需要注意的是,递归算法的时间复杂度通常较高,因为每次调用都会将调用栈中的信息暂存,需要消耗更多的内存。在实际应用中,可能需要使用其他算法来避免这个问题。

以上就是 JavaScript 中用递归算法实现斐波那契数列的介绍和实现代码。