Générateur de séquence Python Fibonacci
Exécutez et comprenez la séquence de Fibonacci en Python. Cet exemple de code interactif montre des approches itératives et récursives pour générer des nombres de Fibonacci.
Aperçu
La séquence de Fibonacci est une série de nombres où un nombre est l'addition des deux derniers nombres, commençant par 0 et 1.
Il s’agit d’un problème informatique classique, souvent utilisé pour enseigner la récursivité, la programmation dynamique et l’itération de boucles.
En Python, nous pouvons générer efficacement la séquence de Fibonacci en utilisant une boucle (approche itérative) qui évite les risques de débordement de pile liés à une récursion profonde.
Sortie de code et d'exécution
Ce script génère les N premiers nombres de la séquence de Fibonacci à l'aide d'une boucle while très efficace.
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]Mise en œuvre étape par étape
- Analyse d'algorithmes et tests d'optimisation
- Modélisation mathématique des modèles de croissance biologique
- Préparation aux entretiens techniques
Foire aux questions
L'approche récursive de Fibonacci est-elle meilleure ?
Dans la plupart des cas de code de production, non. L'approche récursive simple s'exécute en un temps O(2^n), ce qui est incroyablement lent. La boucle itérative s'exécute en O(n), ce qui la rend bien supérieure à moins que la mémorisation ne soit utilisée.
Sujets connexes
Vérifiez si un nombre est premier en utilisant Python. Exécutez notre algorithme interactif pour voir une itération mathématique et une évaluation racine efficaces.
Script de calculatrice simple PythonCréez une calculatrice de base en Python. Apprenez à mapper des opérateurs mathématiques, à prendre en compte les flux d'exécution des utilisateurs et à gérer la logique de manière native.