Complejidad de Algoritmos

442 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
442
On SlideShare
0
From Embeds
0
Number of Embeds
103
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Complejidad de Algoritmos

  1. 1. Análisis de Algoritmos Danilo Henríquez
  2. 2. Complejidad de un Algoritmo  Se basa en el tamaño de un problema  Si se tiene un problema pequeño, se realiza un algoritmo pequeño.  Si se tiene un problema grande, se realiza un algoritmo grande.
  3. 3. Complejidad de un Algoritmo  Se mide en la cantidad de recursos que utiliza, sea tiempo y espacio.
  4. 4. Complejidad de un Algoritmo Recurso Tiempo  La complejidad se asocia a la cantidad de tiempo requerida para la ejecución de las operaciones.
  5. 5. Complejidad de un Algoritmo Recurso Espacio  La complejidad se asocia a la cantidad de espacio requerida por el problema.
  6. 6. Complejidad de un Algoritmo  Estructura Interna:  Estáticas:  Vectores  Matrices  Dinámicas  Lineales  Pilas  Listas  colas  No lineales  Árboles  Grafos  Estructura Externa:  Base de datos  Archivos Estructura de datos
  7. 7. Complejidad de un Algoritmo  Cada algoritmo tiene su propio comportamiento, dependiendo de las variables de entrada y de como se entregue la información.  Se analizan los datos si son muy ordenados o muy desordenados.
  8. 8. Complejidad de un Algoritmo  Se analiza con datos desordenados.  Se indica cuantas operaciones se tienen que realizar para garantizar que al menos se llevará a cabo una solución. El peor caso
  9. 9.  Se fija en las posibles entradas con un cierto tamaño.  Se hace un promedio de las operaciones que hay que hacer. Complejidad de un Algoritmo El caso promedio
  10. 10.  Se realiza cuando un algoritmo es simple, o en su defecto el algoritmo ya está listo para dar solución a un problema. Complejidad de un Algoritmo El mejor caso
  11. 11.  Está basado en el tamaño de las entradas.  Mientras mas grande son las entradas, mas grande son las ejecuciones a realizar por el programa y mas crece el tiempo de ejecución. Complejidad de un Algoritmo Tiempo de ejecución T(n)
  12. 12.  No mide la potencia de la maquina en la que se ejecuta el algoritmo, ni la habilidad del programador.  Mide la potencia del algoritmo que se realizó.  Es la capacidad de un algoritmo de generar una solución en un tiempo determinado  Se necesita analizar cuando el algoritmo se utiliza para grandes problemas. Complejidad de un Algoritmo Notación asintótica
  13. 13.  Se denomina asintótico a todo aquello asociado a una tasa de crecimiento, dado por el tiempo de ejecución o por el espacio de memoria. Complejidad de un Algoritmo Notación asintótica
  14. 14.  Se ponen etiquetas a los algoritmos de acuerdo a un orden de complejidad y a su comportamiento asintótico.  Se consideran las funciones asintóticas no negativas. Complejidad de un Algoritmo Big-O

×