Medición de la complejidad
4.1 Función de crecimiento
4.2 Notaciones Ω(g(n)),O(g(n)),Θ(g(n))
4.3 Ejemplos
Relación con las estructuras de datos
5.1 Principales estructuras de datos
Algoritmos de ordenamiento
Algoritmos para grafos
Bibliotecas de algoritmos
Conclusiones
1. Definición de algoritmo
Informally, an algorithm is any well-defined computational procedure that takes some value, or set of values, as input and produces some value, or set of values, as output. An algorithm is thus a sequence of computational steps that transform the input into the output. [Cormen]
Por ejemplo:
2. Importancia en el desarrollo de software
Todo el software está hecho de algoritmos.
3. Integración de algoritmos en aplicaciones CRUD
4. Medición de la complejidad
4.1 Función de crecimiento
4.2 Notaciones Ω(g(n)),O(g(n)),Θ(g(n))
Estas notaciones denotan límites inferior, superior y ambos respectivamente.
4.2.1 Ω(g(n))
4.2.1 O(g(n))
4.2.1 Θ(g(n))
4.3 Ejemplos
Acceso a un arreglo
Buscar un elemento en un arreglo ordenado (busqueda binaria)
Buscar un elemento en un arreglo (fuerza bruta)
Ordenamiento - Bubble sort
Busqueda en arbol binario (Depth First Search)
5. Relación con las estructuras de datos
El algoritmo definen los pasos a seguir mientras que las estructuras definen la manera de representar la información para su procesamiento.