Factorielle récursive en Python
La définition n! = n × (n−1)! se termine aux cas 0 et 1.
Qu’est-ce que Factorielle récursive en Python ?
La définition n! = n × (n−1)! se termine aux cas 0 et 1.
Calculer n! avec une fonction récursive.
Quand l’utiliser ?
- Comprendre les algorithmes et structures de données.
- Observer chaque étape et traiter les cas limites.
- Comparer temps d’exécution et mémoire.
Code d’exemple
main.py
def factorial(number):
if number < 0:
raise ValueError("Factorial is undefined for negative numbers")
if number <= 1:
return 1
return number * factorial(number - 1)
print(factorial(6))
Résultat attendu
720
Fonctionnement
Chaque appel diminue n ; temps et profondeur de pile O(n).
Modifiez les valeurs et exécutez le programme avec le compilateur Python en ligne CodeUtility, sans installation locale.
Exercices pratiques
Modifiez les entrées et testez les cas limites avant d’utiliser des données plus volumineuses.
- Testez une entrée vide, un élément et des doublons.
- Affichez l’état après chaque étape.
- Comparez les performances avec une autre solution.