Professional Documents
Culture Documents
Funcin de desempeo
Sea T una funcin de N en \
tiempo T \*
*
Tamao de la entrada n n N
Dra. Laura Cruz Reyes 1.2 Clasificacin de Funciones de DA
Funcin de desempeo
Algoritmo menor (n) 1 menor A[0] 2 for i = 1 to n-1 3 if A[i] < menor 4 menor = A[i] 5 return (menor)
Dra. Laura Cruz Reyes
T(n)=n-1
n
Operacin bsica: comparacin de clave T(n) = n-1 comparaciones
2n
2,000
n3/2
5n2 100n
1,000
n
5 10 15 20
10 14 12 10
100 45 27 13
Anlisis Asinttico
Se estudia el comportamiento asinttico de la funcin T(n) para analizar la velocidad de crecimiento del tiempo de ejecucin cuando n es suficientemente grande (n ). Interesa el comportamiento asinttico de los algoritmos ya que es para tamaos grandes de n cuando se presentan problemas de tiempo o espacio.
Dra. Laura Cruz Reyes 1.2 Clasificacin de Funciones de DA
Anlisis Asinttico
En el limite, dado que las constantes y trminos no-dominantes son despreciables, las grficas de dos funciones se pueden aproximar, sin llegar jams a tocarse.
T
T2(n) = 3 n3 + 60n T1(n) = 10000 n2
n
Dra. Laura Cruz Reyes 1.2 Clasificacin de Funciones de DA
n 16
n 1000
n 10000
log 2 n
n
n log n
nP P N
cn
Dra. Laura Cruz Reyes
c >1
Conjuntos de funciones
Sean f y g funciones de N en \ (tamao de la entrada al tiempo de ejecucin)
g(n) funcin de crecimiento
asinttico que define conjuntos
*
T R*
f(n) funcin analizada correspondiente al algoritmo Tamao de la entrada n n N
Dra. Laura Cruz Reyes 1.2 Clasificacin de Funciones de DA
Notaciones asintticas
(g): Conjunto de todas las funciones que crecen asintticamente por lo menos tan rpido como g (g es un lmite inferior) Conjunto de todas las funciones que crecen asintticamente con la misma rapidez que g (g es un lmite ajustado) Conjunto de todas las funciones que no crecen asintticamente ms rpido que g (g es un lmite superior)
(g): (g):
Notaciones asintticas
Ejemplo g= n2
Conjunto de todas las funciones que crecen asintticamente de forma igual o mayor que g (g es un lmite inferior)
n5 n4 n3 n2+3
(n2)
Conjunto de todas las funciones que crecen asintticamente con la misma rapidez que g (g es un lmite ajustado) Conjunto de todas las funciones que crecen asintticamente de forma igual o menor que g (g es un limite superior)
Dra. Laura Cruz Reyes
2n2
(n2)
n1.3 2n+1 n
(n2)
Notaciones asintticas
Ejemplo g= n2 n5 n4 n3
(n2) (n2)
n5 (n2) n4 (n2) n3 (n2) 2n2 (n2) 2n2 (n2) 2n2 (n2) n (n2) 2n+1 (n2)
n5 = (n2) n4 = (n2) n3 = (n2) 2n2 = (n2) 2n2 = (n2) 2n2 = (n2) n = (n2) 2n+1 = (n2)
(n2)
Se usa el smbolo de igualdad en lugar del smbolo de pertenencia. Esto es un abuso de la notacin pero simplifica el manejo algebraico de funciones asintticas.
Operacin bsica: nmero de comparaciones Complejidad del peor caso: W(n) = n Complejidad asinttica del peor caso:
Ajustada (ms cercana a W(n), la exacta) W(n)= (n) Relajada (aproximaciones ciertas que se van alejando de W(n)) W(n)= (n)= (n2)= (n3) W(n)= (n)= (n0.5)= (n0.7)
Dra. Laura Cruz Reyes 1.2 Clasificacin de Funciones de DA
Multiplicacin de matrices
Algoritmo Multiplicacin de matrices Entradas: Matrices A y B, y enteros m, n, y p, que indican que A es una matriz de m n y B es una matriz de n p Salidas: Matriz C, una matriz de m p. C se pasa al algoritmo, el cual la llena. multMat(A,B,C,m,n,p) 1. for (i =0; i<m; i++) 2. for (j =0; j<p; j++) 3. cij = 0 4. for (k =0; k<p; k++) 5. cij += aik bkj
Dra. Laura Cruz Reyes 1.2 Clasificacin de Funciones de DA
Multiplicacin de matrices
Operacin bsica: Multiplicacin de elementos de matrices Complejidad: B(n) = A(n) =W(n) = n3 Complejidad asinttica :
Ajustada (ms cercana a la exacta) B(n) = A(n)= W(n) = (n3) Relajada (aproximaciones ciertas que se van alejando de la exacta) B(n) = A(n)= W(n) = (n3)= (n4)= (n5) B(n) = A(n)= W(n) = (n3)= (n2)= (n)
Dra. Laura Cruz Reyes 1.2 Clasificacin de Funciones de DA
El conjunto O(g)
c g(n) f(n)
t(n)
n n0
Si g es una funcin N en R, se denota por O(g) al conjunto de todas las funciones f, tal que para alguna constante real c > 0 y alguna constante entera no negativa no, f(n) c g(n) para toda n no La pertenencia se lee: f es O de g o f es miembro de O de g
Dra. Laura Cruz Reyes 1.2 Clasificacin de Funciones de DA
b) Enunciado demostrativo: Para n0 = 3 y c = 4, f(n) cg(n) para toda n 3, se sigue que f O(g)
cg(n) =4 n3 f(n)= 9n2
T(n)
n0= 3
Dra. Laura Cruz Reyes 1.2 Clasificacin de Funciones de DA
El conjunto (g)
f(n)
T(n)
c g(n)
n n0
Si un g es una funcin N en R, se denota por (g) al conjunto de todas las funciones f, tal que para alguna constante real c > 0 y alguna constante entera no negativa no, f(n) c g(n) para toda n no La pertenencia se lee: f es omega de g, o f es miembro de omega de g
Dra. Laura Cruz Reyes 1.2 Clasificacin de Funciones de DA
El conjunto (g)
c1g(n) f(n) c2g(n) n n0
T(n)
Si un g es una funcin N en R, se denota por (g) al conjunto de todas las funciones f, que estn tanto en O(g) como en (g), para toda n no c1 g(n) f(n) c2 g(n) La pertenencia se lee f es teta g, f es miembro de teta de g
(g)
g(n) f(n)
c=
f ( n) = c (0 < c ) g ( n)
(g)
0<c<
f ( n) = c (0 < c < ) g ( n)
(g)
c=0
f ( n) = c (0 c < ) g ( n)
n
Dra. Laura Cruz Reyes 1.2 Clasificacin de Funciones de DA
(g)
f (n)=n3
n3 lim 2 = lim n = n n n
En el lmite, f tiene un valor mucho ms grande que g; g es una cota inferior para f
g(n)=n2 f (n)=2n2
(g)
2n 2 lim 2 = 2 n n
En el lmite, f tiene un valor cercano al de g.
f(n)=n
(g)
n
lim
n 1 = =0 lim n n 2 n n
En el lmite, f tiene un valor mucho ms pequeo que g; g es una cota superior para f
Ejemplo: Sea f(n) = n3 y g(n) = 37n2 +120n + 17, se demuestra que f (g).
f ( n) n3 n3 / n3 = lim = lim = lim n g ( n) n 37 n 2 + 120n + 17 n 37 n 2 / n 3 + 120n / n 3 + 17 / n 3 1 1 = = lim n 37 / n + 120 / n 2 + 17 / n 3 0+0+0
Dra. Laura Cruz Reyes 1.2 Clasificacin de Funciones de DA
Regla de LHopital
Sea f y g funciones diferenciables, con derivadas f y g respectivamente, tales que
lim f (n) = lim g (n) = .
n n
entonces
lim
n
Bibliografa
Algoritmos Computacionales: Introduccin al anlisis y diseo. Tercera Edicin. Sara Basse, Allen Van Gelder. Addison Wesley. 2002 Cormen T.H., Leiserson C.E., Rivest R.L: Introduction to Algorithms, MIT Press (1990)
Dra. Laura Cruz Reyes 1.2 Clasificacin de Funciones de DA