Algoritmos en Python

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

Ejecutar código →
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.

  1. Prueba una entrada vacía, un elemento y duplicados.
  2. Muestra el estado después de cada paso.
  3. Compara el rendimiento con otra solución.
Ejecutar en el IDE de Python →