Eficiencia De Los Algoritmos
El análisis de algoritmos estudia, desde el punto de vista teórico, los recursos computacionales que necesita la ejecución de un programa de ordenador: su eficiencia.La técnica que se utilizaba en los primeros años de la programación para comparar la eficiencia de distintos algoritmos consistía en ejecutarlos para datos diferentes y medir el tiempo consumido.Dado que las máquinas y los lenguajes eran dispares, y que el tiempo de ejecución depende no solo del tamaño sino también del contenido de los datos, resultaba muy difícil comparar tales resultados.El primer estudio serio sobre la eficiencia de los algoritmos se lo debemos a Daniel Goldenberg del MIT. En 1952 realizó un análisis matemático del número de comparaciones necesarias, en el mejor y enel peor caso, de cinco algoritmos distintos de ordenación.
_ Tiempo:
_ Aplicaciones informáticas que trabajan “en tiempo real”: requieren que los álculos se realicen en el menor tiempo posible.
_Aplicaciones que manejan un gran volumen de información: si no se tratan
adecuadamente pueden necesitar tiempos impracticables.
_ Problemas intrínsecamente complejos.
_ Espacio: Las máquinastienen una memoria limitada.
COSTE = Consumo de estos recursos por parte de un algoritmo.
Cálculo de la eficiencia de un algoritmo
Método empírico o a posteriori Desventajas:-No permite lacomparación de algoritmos sobre diversos soportes-Requiere el esfuerzo de programar cada uno de los algoritmos para determinar el mejor-Sólo será posible comparar los tiempos para algunos tamaños delproblema
Método teórico o a priori Ventajas:-Analiza el algoritmo y no el programa concreto ⇒resultado independiente de la máquina y del lenguaje-La expresión matemática que da el tiempo de ejecución esdependiente del tamaño del problema-Nos evitamos programar el o los algoritmos
COMPLEJIDAD (O COSTE) DE UN ALGORITMO:
Es una medida de la cantidad de recursos (tiempo, memoria) que el algoritmo...
Regístrate para leer el documento completo.