Documentos de Académico
Documentos de Profesional
Documentos de Cultura
UMSA
Análisis de algoritmos– p. 1
Introducción
Análisis de algoritmos– p. 2
Introducción...
Análisis de algoritmos– p. 3
Notación orden de
t(n) = 5n2
Análisis de algoritmos– p. 5
Propiedades de O grande de n
Análisis de algoritmos– p. 6
Propiedades de O grande de n.....
Análisis de algoritmos– p. 7
Propiedades de O grande de n.....
Análisis de algoritmos– p. 8
Propiedades de O grande de n....
O(loga n) = O(logb n)
Análisis de algoritmos– p. 9
Demostración
Análisis de algoritmos– p. 10
Propiedades de O grande de n
f (n)ǫO(f (n))
Análisis de algoritmos– p. 11
Propiedades de O grande de n
Análisis de algoritmos– p. 12
Propiedades de O grande de n
Propiedades de límites.
f (n) +
1. si lı́mn→∞ g(n)
ǫℜ ⇒ f (n)ǫO(g(n)) y g(n)ǫO(f (n))
f (n)
2. si lı́mn→∞ g(n)
= 0 ⇒ f (n)ǫO(g(n)) pero g(n)¬ǫO(f (n))
(n)
3. si lı́mn→∞ fg(n) = +∞ ⇒
f (n)¬ǫO(g(n)) pero g(n)ǫO(f (n))
Análisis de algoritmos– p. 13
Notación asintótica condicional
Análisis de algoritmos– p. 14
Notación omega
Análisis de algoritmos– p. 15
Notación omega
Análisis de algoritmos– p. 16
Notación teta
Análisis de algoritmos– p. 17
Notación teta...
Análisis de algoritmos– p. 18
Ejercicios
Análisis de algoritmos– p. 19
Ejercicio 1
Demostrar:
3n2 − 100n + 6 = O(n2 )
3n2 − 100n + 6 = O(n3 )
3n2 − 100n + 6 6= O(n)
Recordemos que para todos los casos de debe cumplir
cO(n) > tn
Análisis de algoritmos– p. 20
Ejercicio 2
Demostrar:
3n2 − 100n + 6 = Ω(n2 )
3n2 − 100n + 6 6= Ω(n3 )
3n2 − 100n + 6 = Ω(n)
Recordemos que para todos los casos de debe cumplir
cΩ(n) < tn
Análisis de algoritmos– p. 21
Ejercicio 3
Demostrar:
3n2 − 100n + 6 = Θ(n2 )
3n2 − 100n + 6 6= Θ(n3 )
3n2 − 100n + 6 6= Θ(n)
Para resolver vea cuales se a aplican O, Θ, Ω.
Análisis de algoritmos– p. 22
Ejercicio 4
Demostrar:
2n+1 = Θ(2n )
Paso 1 demostrar
2n+1 = O(2n )
Paso 2 demostrar
2n+1 = Ω(2n )
Análisis de algoritmos– p. 23
Análisis de las estructuras de control
Análisis de algoritmos– p. 24
Secuenciales
Análisis de algoritmos– p. 25
Ciclos For
Análisis de algoritmos– p. 26
Ciclos For
Análisis de algoritmos– p. 27
Llamadas recursivas
Análisis de algoritmos– p. 28
Llamadas recursivas
Análisis de algoritmos– p. 31
Ciclos while y repeat...
Análisis de algoritmos– p. 32
Ciclos while y repeat
Análisis de algoritmos– p. 33
Ciclos while y repeat
Análisis de algoritmos– p. 34
Ciclos while y repeat
Análisis de algoritmos– p. 35
Análisis del caso medio
Análisis de algoritmos– p. 36
Análisis del caso medio
Análisis de algoritmos– p. 37
Análisis del caso medio
Análisis de algoritmos– p. 38
Análisis del caso medio
Análisis de algoritmos– p. 39
Análisis del caso medio
Análisis de algoritmos– p. 40
Análisis amortizado
Análisis de algoritmos– p. 41
Análisis amortizado.....
Análisis de algoritmos– p. 43
Método por substitución
Análisis de algoritmos– p. 44
Solución de recurrencias
(2) 2T (n/2) + n
Primero buscamos una solución y suponemos que el
tiempo asintótico O(n) de esta ecuación es O(n log n).
Debemos probar que ésta es una función para la cual
todos los valores de T (n) son menores con lo cual se
demuestra que es una cota superior.
Análisis de algoritmos– p. 45
Solución de recurrencias
= cn log n2 + n
= cn log n − cn log 2 + n
T (n)
= cn log n − cn + n
≤ cn log n para c ≥ 1
Análisis de algoritmos– p. 46
Solución de recurrencias....
Análisis de algoritmos– p. 47
Solución de recurrencias....
Análisis de algoritmos– p. 48
Solución de recurrencias....
Análisis de algoritmos– p. 49
Solución de recurrencias....
n
T (n) ≤ 2c( ) + n
2
Desarrollando:
= cn + n
T (n)
= cn
Análisis de algoritmos– p. 50
Solución de recurrencias....
Análisis de algoritmos– p. 51
Ejercicios
Análisis de algoritmos– p. 52