Factorial recursivo en Python
La definición n! = n × (n−1)! termina en 0 o 1.
¿Qué es Factorial recursivo en Python?
La definición n! = n × (n−1)! termina en 0 o 1.
Calcula n! mediante recursión.
¿Cuándo se utiliza?
- Comprender algoritmos y estructuras de datos.
- Observar cada paso y tratar casos límite.
- Comparar tiempo de ejecución y memoria.
Código de ejemplo
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))
Resultado esperado
720
Cómo funciona
Cada llamada reduce n; tiempo y profundidad de pila O(n).
Cambia los valores y ejecuta el programa en el compilador Python online de CodeUtility sin instalar Python.
Ejercicios prácticos
Modifica las entradas y prueba casos límite antes de usar conjuntos de datos mayores.
- Prueba una entrada vacía, un elemento y duplicados.
- Muestra el estado después de cada paso.
- Compara el rendimiento con otra solución.