Sie sind auf Seite 1von 5

Dise no de algoritmos

Jes us Berm udez de Andr es. UPV-EHU Gu as para la soluci on de ejercicios: Notaci on asint otica Curso 2008-09

on de notaci on asint otica , demuestre con detalle que 1. Usando la denici 2 2 1024n + 5n (n ). Soluci on: Para demostrar que 1024n2 + 5n O(n2 ) hay que encontrar un n0 y una constante c > 0 tal que 1024n2 + 5n cn2 n n0 . Basta dividir esa inecuaci on por n2 para obtener 1024 + basta tomar n0 = 5 y c = 1025.
5 n

c. Por lo tanto,

Para demostrar que 1024n2 + 5n (n2 ) hay que encontrar un n0 y una constante c > 0 tal que 1024n2 + 5n cn2 n n0 . Basta tomar n0 = 0 y c = 1. 2. Usando las deniciones de notaci on asint otica, demuestre si son verdaderas o falsas las armaciones siguientes: a ) (n + 1)! O(3(n!)) b ) n2 ((n + 1)2 ) Soluci on: a ) (n + 1)! O(3(n!)) es falso. Lo demostramos por reducci on al absurdo. Si suponemos que es verdadero, entonces c > 0, n0 tal que n n0 , (n + 1)! c3n! pero entonces tendr amos que n n0 , n + 1 c3; que es imposible. b ) n2 ((n + 1)2 ) es verdadero. Intentemos justicar las acotaciones pertinentes: n2 c(n + 1)2 n2 cn2 + c2n + c 1 c + c2/n + c/n2 y basta tomar una constante 0 < c 1/4 para que se satisfagan las acotaciones n > 1. 3. Demuestre las proposiciones siguientes: a ) g (n) O(f (n)) si y s olo si f (n) (g (n)).

UPV-EHU. Dise no de algoritmos

b ) g (n) o(f (n)) si y s olo si f (n) (g (n)). c ) (f (n)) = O(f (n)) (f (n)) d ) Si g (n) o(f (n)) entonces g (n) O(f (n)) (f (n)) Soluci on: a) g (n) O(f (n)) c > 0, n0 n n0 , g (n) cf (n) 1 c > 0, n0 n n0 , g (n) f (n) c f (n) (g (n)). b) g (n) o(f (n)) n0 > 0, n n0 , g (n) < f (n) 1 n0 > 0, n n0 , g (n) < f (n) f (n) (g (n)). on de que g (n) (f (n)) para comprobar que c ) Basta desplegar la denici las dos acotaciones se corresponden con las pertinentes deniciones de que g (n) O(f (n)) y g (n) (f (n)); y viceversa. d ) Si g (n) o(f (n)) entonces es obvio que g (n) O(f (n)); pero vamos a demostrar, por reducci on al absurdo, que g (n) / (f (n)). g (n) (f (n)) f (n) O(g (n)) (v ease el apartado (a) anterior) c > 0, n0 n n0 , f (n) cg (n) 1 (i.e. f (n) g (n)) c pero esto u ltimo contradice n0 c > 0, n n0 , g (n) < cf (n) que es la denici on de g (n) o(f (n)). 4. Demuestre que las proposiciones siguientes son equivalentes: a ) O(f (n)) = O(g (n)) b ) (f (n)) = (g (n)) c ) g (n) (f (n)) Soluci on: Vamos a demostrar que (a) (b) (c) (a). (a) (b): Bastar a con demostrar la inclusi on (f (n)) (g (n)), porque (g (n)) (f (n)) se demuestra de manera an aloga. h(n) (f (n)) h(n) O(f (n)) = O(g (n)) y h(n) (f (n)). O(f (n)) = O(g (n)) g (n) O(f (n)) f (n) (g (n)). h(n) (f (n)) y f (n) (g (n)) h(n) (g (n)). h(n) O(f (n)) = O(g (n)) y h(n) (g (n)) h(n) (g (n)).

UPV-EHU. Dise no de algoritmos

(b) (c): g (n) (g (n)) = (f (n)). (c) (a): Como antes, demostramos s olo una de las inclusiones. g (n) (f (n)) g (n) O(f (n)) y g (n) (f (n)). h(n) O(g (n)) y g (n) O(f (n)) h(n) O(f (n)). 5. Demuestre que lg n o(n ) para cualquier > 0. Soluci on: Aplicando las propiedades de los l mites y la regla de LH opital:
1 n lg n n ln 2 = l m = l m =0 1 n n n n n ln 2 n n

l m

6. Demuestre que nk o(2n ) para cualquier k > 0. Soluci on: Aplicando las propiedades de los l mites y, reiteradamente, la regla de LH opital: nk k (k 1) . . . 2 1 knk1 = l m = l m =0 n n n 2 n n 2 ln 2 2n (ln 2)k l m 7. Justique si son verdaderas o falsas cada una de las armaciones que aparecen a continuaci on: Por ejemplo, a la armaci on n2 O(n3 ) y n2 (n3 ) se deber a responder verdadero y falso. a)
n lg n

(n) y

n lg n

o(n)

b ) lg lg n o(lg n) y lg lg n (lg n) c ) 4lg2 n O(n2 ) y 4lg2 n (n2 ) d ) Siendo 0 < < 1, n1+ (n lg n) y n1+ O(n lg n)
n 1+ ) y e ) Siendo 0 < < 1, lg n (n f ) (lg n)2 o( n) y n O((lg n)2 )
2

n2 lg n

(n1+ )

g ) 3n (2n ) y 3n (2n ) Soluci on:


n n a ) l mn lg n = 0 por lo tanto, dadero, respectivamente.

n lg n

(n) y

n lg n

o(n) es falso y ver-

lg n b ) l mn lg lg n = 0 por lo tanto, lg lg n o(lg n) y lg lg n (lg n) es verdadero y falso, respectivamente.

c ) 4lg2 n = nlg2 4 = n2 por lo tanto, 4lg2 n O(n2 ) y 4lg2 n (n2 ) es verdadero y verdadero, respectivamente.
n 1+ (n lg n) y d ) l mn n lg n = por lo tanto, siendo 0 < < 1, n n1+ O(n lg n) es verdadero y falso, respectivamente.
1+

e ) l mn = por lo tanto, y verdadero, respectivamente.

n2 lg n n1+

n2 lg n

(n1+ ) y

n2 lg n

(n1+ ) es falso

UPV-EHU. Dise no de algoritmos

2 n) = 0 por lo tanto, (lg n)2 o( n) y f ) l mn (lg n O((lg n)2 ) es n verdadero y falso, respectivamente.

3 n (2n ) y 3n (2n ) es verdadero y mn 2 g ) l n = por lo tanto, 3 falso, respectivamente.

8. Demuestre si la siguiente armaci on es verdadera o falsa: f (n) O(r(n)) y f (n) (n) g (n) O(s(n)) implica que g(n) O( r s(n) ). Soluci on: La armaci on es falsa. Basta mostrar el siguiente contraejemplo: 3n2 O(n2 ) n2 2 y n O(n ) pero 3n / O(1). 9. Una funci on f : N R es asint oticamente no decreciente si n0 n n0 f (n) f (n + 1). Una funci on f : N R es b-arm onica (b N b 2) si es asint oticamente no decreciente y la funci on g (n) = f (bn) es de O(f (n)). Demuestre que si f es b-arm onica entonces es k-arm onica para cualquier k 2. Soluci on: Si f (n) es b-arm onica entonces es asint oticamente no decreciente y c > 0. n0 . n n0 . f (bn) cf (n). Demostraremos la proposici on haciendo inducci on sobre k . Base de la inducci on: Si k b entonces f (kn) f (bn) cf (n) (f (n) asint. no decreciente) (f (n) es b arm onica)

Hip otesis de inducci on: Supongamos verdadera la proposici on, para todo k l f ((l + 1)n) f (2ln) c1 f (2n) c1 f (bn) c1 c2 f (n) (2 l l + 1 2l) y (f (n) asint. no decreciente) (f (n) es b arm onica) (2 n, y f (n) asint. no decreciente) (f (n) es b arm onica)

on asint otica condicional del siguiente modo. Sea P (n) 10. Denimos una notaci una propiedad. (f (n)|P (n)) = {g (n)| c1 , c2 . n0 . n n0 . (P (n) c1 f (n) g (n) c2 f (n))} Demuestre la siguiente proposici on: Si f (n) es b-arm onica, t(n) es asint oticamente no decreciente y t(n) (f (n)| n potencia de b) (b 2), entonces t(n) (f (n)). Soluci on: La hip otesis es que a, c > 0. n0 . n n0 . (n potencia de b af (n) t(n) cf (n)).

UPV-EHU. Dise no de algoritmos

Si m no es potencia de b y m n0 entonces i. bi < m < bi+1 . Entonces: t(m) t(bi+1 ) cf (b


i+1 i

(t(n) asint. no decreciente) ) = cf (bbi ) (por hip otesis) (f (n) es b arm onica) (f (n) asint. no decreciente) (f (n) asint. no decreciente)

cdf (b ) cdf (m) Por otro lado : f (m) f (bi+1 )


i

df (b ) (f (n) es b arm onica) 1 i d t(b ) (por hip otesis) a d t(m) (t(n) asint. no decreciente) a
d En conclusi on: p = cd, q = a . m0 . m m0 . qf (m) t(m) pf (m)), lo que signica que t(m) (f (m)).

Das könnte Ihnen auch gefallen