Sei sulla pagina 1di 10

ANLISIS DE ALGORITMOS

Curso inter-semestral
Presenta: Omar Yeladaqui
Crigo

2. COMPORTAMIENTO ASINTTICO
DE FUNCIONES
El inters principal del anlisis de algoritmos
radica en saber cmo crece el tiempo de
ejecucin, cuando el tamao de la entrada
crece. Esto es la eficiencia asinttica del
algoritmo. Se denomina asinttica porque
analiza el comportamiento de las funciones en el
lmite, es decir, su tasa de crecimiento.
La notacin asinttica captura el
comportamiento de la funcin para valores
grandes de N.

2. COMPORTAMIENTO ASINTTICO
DE FUNCIONES
Para resolver un problema pueden existir
varios algoritmos. Por tanto, es lgico
elegir el mejor.
Si el problema es sencillo o no hay que
resolver muchos casos se podra elegir el
ms fcil.
Si el problema es complejo o existen
muchos casos habra que elegir el
algoritmo que menos recursos utilice.

2. COMPORTAMIENTO ASINTTICO
DE FUNCIONES
Los recursos ms importantes son el tiempo
de
ejecucin
y
el
espacio
de
almacenamiento.
Generalmente, el ms importante es el
tiempo.
Al hablar de la eficiencia de un algoritmo nos
referiremos a lo rpido que se ejecuta.
La eficiencia de un algoritmo depender,
en general, del tamao de los datos de
entrada.

2. COMPORTAMIENTO ASINTTICO
DE FUNCIONES
A la hora de analizar un algoritmo es
necesario saber que pueden darse tres tipos
de ejemplares o casos:
Caso mejor: se trata de aquellos
ejemplares del problema en los que el
algoritmo es ms eficiente; Caso peor: se
trata de aquellos ejemplares del problema
en los que el algoritmo es menos eficiente.
Ejemplos: insertar al final de una
lista, ordenar un vector que est
ordenado en orden inverso, etc. Nos
interesa mucho.

2. COMPORTAMIENTO ASINTTICO
DE FUNCIONES
Caso medio: se trata del resto de
ejemplares del problema. Por ejemplo:
multiplicar
dos
nmeros
enteros
distintos de cero, ordenar un vector
que no est ordenado ni en orden
directo ni inverso, etc. Es el caso que
ms nos debera preocupar puesto que ser
el ms habitual, sin embargo no siempre se
puede calcular (habra que saber cules son
las
probabilidades
de
los
distintos
ejemplares).

2. COMPORTAMIENTO ASINTTICO
DE FUNCIONES
A la hora de analizar un algoritmo nos
interesa, principalmente, la forma en que
se comporta el algoritmo al aumentar
el tamao de los datos; es decir, cmo
aumenta su tiempo de ejecucin.
Esto
se
conoce
como
eficiencia
asinttica de un algoritmo y nos
permitir comparar distintos algoritmos
puesto que deberamos elegir aquellos que
se comportarn mejor al crecer los datos.

2. COMPORTAMIENTO ASINTTICO
DE FUNCIONES
La notacin asinttica se describe por
medio de una funcin cuyo dominio es el
conjunto de nmeros naturales, N.
Se describe la notacin O lmite
asinttico superior como:

2. COMPORTAMIENTO ASINTTICO
DE FUNCIONES

La notacin anterior bsicamente nos dice


que si tenemos un algoritmo cuyo tiempo de
ejecucin es f(n) podemos encontrar otra
funcin de n, g(n), y un tamao de problema
n0
de
tal
forma
que
g(n)
acota
superiormente al tiempo de ejecucin para
todos los problemas de tamao superior a

2. COMPORTAMIENTO ASINTTICO
DE FUNCIONES

Potrebbero piacerti anche