Python フィボナッチ数列ジェネレーター

Python でフィボナッチ数列を実行して理解します。このインタラクティブなコード例は、フィボナッチ数を生成するための反復的および再帰的アプローチを示しています。

エディターで試してみる

概要

フィボナッチ数列は、0 と 1 から始まる最後の 2 つの数値の加算である一連の数値です。

これは古典的なコンピュータ サイエンスの問題であり、再帰、動的プログラミング、ループ反復を教えるためによく使用されます。

Python では、深い再帰によるスタック オーバーフローのリスクを回避するループ (反復アプローチ) を使用してフィボナッチ数列を効率的に生成できます。

コードと実行の出力

このスクリプトは、非常に効率的な while ループを使用して、フィボナッチ数列の最初の N 個の数値を生成します。

def generate_fibonacci(n):
    fib_list = []
    a, b = 0, 1
    
    while len(fib_list) < n:
        fib_list.append(a)
        a, b = b, a + b
        
    return fib_list

# Generate the first 10 Fibonacci numbers
terms = 10
result = generate_fibonacci(terms)
print(f"First {terms} Fibonacci numbers:")
print(result)
端子出力
First 10 Fibonacci numbers:
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34]

段階的な実装

  • アルゴリズム分析と最適化テスト
  • 生物学的成長パターンを数学的にモデル化する
  • 技術面接の準備

よくある質問

再帰的フィボナッチアプローチの方が優れているのでしょうか?

ほとんどの実稼働コードの場合は、「いいえ」です。単純な再帰的アプローチは O(2^n) 時間で実行され、信じられないほど遅くなります。反復ループは O(n) で実行されるため、メモ化が使用されない限りはるかに優れています。

関連トピック