- 1

Programación Orientada a Objetos y Algoritmos Avanzados
01:55 - 2

Complejidad Algorítmica: Comparación y Medición de Eficiencia
14:47 - 3

Análisis del Crecimiento de Funciones en Algoritmos
05:17 - 4

Notación asintótica y complejidad algorítmica básica
09:45 - 5

Clases de Complejidad Algorítmica y su Impacto en el Rendimiento
10:57
Complejidad Algorítmica: Comparación y Medición de Eficiencia
Clase 2 de 16 • Curso de Complejidad Algorítmica con Python
Contenido del curso
Complejidad algorítmica
Algoritmos de búsqueda y ordenación
Ambientes virtuales
Graficado
Algoritmos de optimización
Resumen
A continuación te dejo el código con una corrección en el returnde la función recursiva:
import time
def factorial(n):
respuesta = 1
while n > 1:
respuesta *= n
n -= 1
return respuesta
def factorial_r(n):
if n == 1:
return 1
return n * factorial_r(n - 1)
if __name__ == '__main__':
n = 200000
comienzo = time.time()
factorial(n)
final = time.time()
print(final - comienzo)
comienzo = time.time()
factorial_r(n)
final = time.time()
print(final - comienzo)