Entradas

Mostrando las entradas etiquetadas como ordenación

Calcular tiempos de ejecución, en Python

Imagen
Hola. Una forma rápida y sencilla de evaluar un algoritmo es calcular el tiempo de ejecución del mismo, para ver si efectivamente es óptimo para nuestros intereses. Este tipo de análisis puede hacerse matemáticamente, ó si disponemos de algún "proceso" que nos indique la rapidez del mismo. No voy a entrar aquí sobre como calcular tiempos de ejecución O, Omega y demás cosas de estas. En este post vamos a ver la forma de calcular el tiempo de ejecución, en segundos, para cualquier algoritmo. Para nuestro ejemplo, mediremos el algoritmo de ordenación QuickSort . Lo que vamos a crear es, mediante una función decoradora , una función para calcular tiempos de ejecución. Nuestra función de medición es la siguiente: def cronometro(funcion): def funcion_a_ejecutar(*argumentos): # Tiempo de inicio de ejecución. inicio = time.time() # Lanzamos función a ejecutar. ret = funcion(*argumentos) # Tiempo de fin de ejecución. fin = time.time() ...