JavaScriptでのフィボナッチ数列プログラム


  1. 再帰関数を使用する方法:
    function fibonacciRecursive(n) {
    if (n <= 1) {
    return n;
    }
    return fibonacciRecursive(n - 1) + fibonacciRecursive(n - 2);
    }
    console.log(fibonacciRecursive(10)); // 55

この方法では、再帰的に関数を呼び出してフィボナッチ数列を生成します。ただし、大きな数になると計算に時間がかかる可能性があります。

  1. ループを使用する方法:
    function fibonacciLoop(n) {
    let a = 0;
    let b = 1;
    let temp;
    for (let i = 2; i <= n; i++) {
    temp = a + b;
    a = b;
    b = temp;
    }
    return b;
    }
    console.log(fibonacciLoop(10)); // 55

この方法では、ループを使用してフィボナッチ数列を生成します。再帰関数よりも効率的であり、大きな数でも迅速に計算できます。

  1. メモ化を使用する方法:
    function fibonacciMemoization(n, memo = {}) {
    if (n in memo) {
    return memo[n];
    }
    if (n <= 1) {
    return n;
    }
    memo[n] = fibonacciMemoization(n - 1, memo) + fibonacciMemoization(n - 2, memo);
    return memo[n];
    }
    console.log(fibonacciMemoization(10)); // 55

この方法では、計算済みの値をメモ化して再利用します。これにより、同じ数に対する計算を一度だけ行うため、再帰関数よりも効率的になります。

これらの方法を使用して、JavaScriptでフィボナッチ数列を生成することができます。適切な方法を選択することで、パフォーマンスを最適化しましょう。