complejidad de-los-algoritmos

12
Complejidad de los Algoritmos Análisis de Algoritmos 2015 Docente: Pilar Pardo Franco Spierccolli

Upload: franco-spierccolli

Post on 17-Aug-2015

28 views

Category:

Automotive


0 download

TRANSCRIPT

Complejidad de los AlgoritmosAnálisis de Algoritmos 2015

Docente: Pilar PardoFranco Spierccolli

¿Que es la complejidad de los algoritmos?

• Tamaño del problema

• Recursos(Tiempo y Espacio)

Recursos.Tiempo:

Cantidad de tiempo que necesita el algoritmo para ejecutar sus operaciones.

Recursos.Espacio:

Espacio en memoria requerida para su ejecución.

Cuando el recurso es espacio:

Estructura de datos

Internas

Externas

Estáticas

Dinámicas

Vectores

Matrices

Lineales

No Lineales

Pilas

Filas

Colas

Arboles

GrafosBase de datos

Archivos

Cada algoritmo se comportaDe manera diferente, dependiendoDe la información que se le entregue.(Variables de entrada)

Por eso es conveniente estudiar su comportamiento en tres casos.

Complejidad del “Peor Caso”:Numero de operaciones que ejecuta El algoritmo para lograr la solución.

Complejidad “Caso Medio”Se busca la media de operaciones con todos Los datos de entrada para llegar a la solución.

Tiempo de ejecución.Como crece el tiempo de ejecución?

Cuando el Tamaño de la entrada crece, para medir se denota como T(n).

Notación AsintóticaSe denomina “ asintótica “ porque analiza el comportamiento de las funciones en base a su tasa de crecimiento

Necesitamos analizar la potencia de los algoritmos independientemente de la

maquina en la que se ejecute el código, incluso de las

habilidades del programador

Por lo general los problemas simples tienen una solución efectiva, pero los

problemas mas grandes tienden a tener una solución mas compleja.

La complejidad del algoritmo se denota con la

expresión BIG-O

Las denominadas familias son agrupaciones de

funciones que se caracterizan por tener el mismo comportamiento asintótico, denominados “Orden de complejidad”

Estos conjuntos se denominan O.