complejidad algoritmos

14
La Complejidad en los Algoritmos Gonzalo Retamal Cantergian Análisis de Algoritmo

Upload: gonzalo-retamal

Post on 11-Aug-2015

165 views

Category:

Documents


0 download

TRANSCRIPT

La Complejidad en los Algoritmos

Gonzalo Retamal Cantergiani Análisis de Algoritmos

Un gran problema tendrá como resultado un gran algoritmo.

En Palabras simples

Y un problema simple tendrá como solución un algoritmo pequeño.

La Complejidad también se mide

En Tiempo y Espacio utilizado por un algoritmo.

Recurso Espacio

Memoria para

su ejecució

n

Recurso Tiempo

Cuanto demora en ejecutarse.

El Comportamiento de cada algoritmo dependerá siempre de las variables de entrada que se

dispongan.

El Peor Caso

Cuantas Operaciones Realizo para llegar a la

solución.

Caso Promedio

Se busca el promedio de operaciones realizadas con todas las posibles

entradas.

El Mejor Caso

Se llega a una solución de manera rápida.

El Análisis de Algoritmos busca saber como crece el Tiempo de

ejecuciónCuando aumenta, se utiliza la función

T(n)

Físicamente se puede medir:- Ejecutando el programa.

- Contando instrucciones a ejecutar.

- Multiplicando por el tiempo de cada instrucción.

“ Los Algoritmos se miden independientemente de la potencia de la

maquina, el código y capacidad del programador “

Notación Asintótica Cuando algo tiende a

infinito

Analiza el comportamiento de las funciones en base a su tasa de

crecimiento.

Ordenados por complejidad (O)

Complejidad

O(1)O(n2) O(log n) O(n) O(n log n) O(n^b) O(b^n)O(n!)

Terminología

Complejidad ConstanteComplejidad CuadráticaComplejidad LogarítmicaComplejidad LinealComplejidad Casi LinealComplejidad PolinómicaComplejidad ExponencialComplejidad Factorial