UNIDAD 7 ANALISIS DE LOS ALGORITMOS

1,320 views

Published on

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

No Downloads
Views
Total views
1,320
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
41
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

UNIDAD 7 ANALISIS DE LOS ALGORITMOS

  1. 1. • El análisis de algoritmos es una parte importante de la Teoría de complejidad computacional, que provee estimaciones teóricas para los recursos que necesita cualquier algoritmo que resuelva un problema computacional dado. 2
  2. 2. Un algoritmo es una secuencia de pasos lógica paraencontrar la solución de un problema.Todo algoritmo debe contar con las siguientescaracterísticas:1. Preciso: cada paso del algoritmo tiene una relación con el anterior y el siguiente.2. Definido: ejecutar más de una vez con los mismos datos y el resultado es el mismo.3. Finito: el algoritmo tiene una serie de pasos definidos o que tiene un fin. 3
  3. 3. • La complejidad algorítmica representa la cantidad de recursos (temporales) que necesita un algoritmo para resolver un problema y por tanto permite determinar la eficiencia de dicho algoritmo.• Los criterios que se emplean para evaluar la complejidad algorítmica no proporcionan medidas absolutas sino medidas relativas al tamaño del problema. 4
  4. 4. 1. Determinar qué operaciones se emplean y su costo relativo.2. Determinar conjuntos de datos y todos los patrones posibles de comportamiento.3. Análisis a priori: determina una función (de ciertos parámetros) que acote el tiempo de cómputo del algoritmo.4. Análisis a posteriori: estadísticas reales sobre tiempo y memoria. 5
  5. 5.  El tiempo de ejecución de un algoritmo, se refiere a la suma de los tiempos en los que el programa tarda en ejecutar una a una, todas sus instrucciones. Tomando en cuenta que cada instrucción requiere una unidad de tiempo, dicho tiempo se puede calcular en función del número de datos. 6
  6. 6. • Se refiere a la memoria que utiliza un programa para su ejecución; es decir, el espacio de memoria que ocupan todas las variables propias del programa.• Dicha memoria se divide en Memoria estática y Memoria dinámica. 7
  7. 7. • Un algoritmo es eficiente cuando logra llegar a sus objetivos planteados utilizando la menor cantidad de recursos posibles, es decir, minimizando el uso memoria, de pasos y de esfuerzo humano.• Espacio: medida de la cantidad de memoria requerida por un programa.• Tiempo: la cantidad de tiempo de ejecución del programa 8

×