编辑代码

// 递归方式
function fibonacciRecursive(n) {
  if (n <= 1) {
    return n;
  }
  return fibonacciRecursive(n - 1) + fibonacciRecursive(n - 2);
}

const n = 10; // 例如,计算第10个斐波那契数
console.log(`递归方式:第 ${n} 个斐波那契数是 ${fibonacciRecursive(n)}`);

// 递推方式
function fibonacciIterative(n) {
  if (n <= 1) {
    return n;
  }
  let fibPrev = 0;
  let fibCurr = 1;
  for (let i = 2; i <= n; i++) {
    let fibNext = fibPrev + fibCurr;
    fibPrev = fibCurr;
    fibCurr = fibNext;
  }
  return fibCurr;
}

console.log(`递推方式:第 ${n} 个斐波那契数是 ${fibonacciIterative(n)}`);