📜  javascript 中的斐波那契数列(1)

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

Javascript中的斐波那契数列

斐波那契数列是指前两个数都为1,从第三个数开始,每个数都是前两个数的和,即1, 1, 2, 3, 5, 8, 13, 21, ...。

在Javascript中,实现斐波那契数列有多种方法,下面我们介绍其中两种常用的方法。

方法一:循环

首先,我们可以使用循环来实现斐波那契数列。代码如下:

function fibonacci(n) {
  if (n <= 0) {
    return null;
  } else if (n === 1 || n === 2) {
    return 1;
  } else {
    let a = 1,
      b = 1,
      c;
    for (let i = 3; i <= n; i++) {
      c = a + b;
      a = b;
      b = c;
    }
    return c;
  }
}

上述代码中,我们使用了一个循环来依次计算斐波那契数列中前n个数的值,并将最后一个数返回。

方法二:递归

另一种方法是使用递归来实现斐波那契数列。代码如下:

function fibonacci(n) {
  if (n <= 0) {
    return null;
  } else if (n === 1 || n === 2) {
    return 1;
  } else {
    return fibonacci(n - 1) + fibonacci(n - 2);
  }
}

上述代码中,我们使用了递归来计算斐波那契数列中前n个数的值。递归函数中,我们首先判断n是否小于等于0或者等于1或者等于2,如果是,则直接返回1。否则,我们将f(n-1)和f(n-2)的值相加并返回。

总结

在Javascript中,实现斐波那契数列可以使用循环或递归的方法。在选择方法时,需要根据具体情况灵活运用。在使用递归时,要注意递归深度过大可能会导致栈溢出的问题。