Title | API 1 - ALGORITMO Y ESTRUCTURA DE DATOS 1 |
---|---|
Author | Gonzalo Ambrosi |
Course | Algoritmos y Estructuras de Datos I |
Institution | Universidad Siglo 21 |
Pages | 1 |
File Size | 88.8 KB |
File Type | |
Total Downloads | 39 |
Total Views | 128 |
Api 1 - ALGORITMO Y ESTRUCTURA DE DATOS 1...
Concepto Algoritmos
Análisis de Algoritmos
Tiempos de Ejecución Notación O
Logaritmos
Búsqueda Estática
¿Qué es? Conjunto de instrucciones ordenadas interpretadas por un computador con el objetivo de resolver algún problema. Proceso en el cual se estiman los recursos que necesita un algoritmo para resolver un problema.
Es una función matemática de la cantidad de datos de entrada que deben procesar. Se lo plantea como: sea f(x) la función que expresa la complejidad de un algoritmo, entonces la expresión f(x) pertenece a O(g(x)), significa que f(x) crece, a lo sumo, tan rápido como cualquiera de las funciones g del conjunto O. Son operaciones en las que, dado un número real positivo a y una base b, permiten calcular el exponente c de una potencia. Proceso de búsqueda efectuado sobre una estructura cuyo contenido no se altera a lo largo del tiempo
¿Para qué sirve? Sirven para resolver una gran variedad de problemas.
Cuando se quiere saber de antemano el rendimiento que tendrá nuestra aplicación ante el uso de un algoritmo sin necesidad de realizar pruebas de rendimiento que dependan del hardware. Para medir la eficiencia de un algoritmo.
¿Cuándo son útiles? Cuando el problema a resolver conlleva muchos cálculos y/o son cálculos muy complejos, para lo cual el hombre está limitado en tiempo, recursos y capacidad analítica. De esta manera también se reducen los errores. Es útil para lograr algoritmos más eficientes.
Cuando necesitamos comparar entre dos algoritmos equivalentes, que resuelven un mismo problema.
Sirven para garantizar que el tiempo de ejecución de un algoritmo siempre será menor a una cota o límite superior.
Son útiles cuando hay que comparar el tiempo de ejecución de distintos algoritmos.
Sirven para simplificar cálculos numéricos más complejos.
Cuando se desea evaluar el tiempo de ejecución de un algoritmo, cuánto tiempo llevará llegar a una solución, y se detecta que responde a una función de crecimiento lento.
Sirven para encontrar un elemento en una estructura que no es modificada, es decir, no presenta nuevas inserciones o eliminaciones
Cuando no se desea tener en cuenta aspectos como el tiempo insumido en ordenar una estructura luego de una inserción o eliminación....