1. Alumno : Víctor Hugo Orellana Jaque!
Análisis de Algoritmos Sección 112!
Profesora : Sra. Pilar Pardo Hidalgo!
25-junio-2014!
2. ¿Qué es la complejidad de un
algoritmo?!
² Se expresa en función del tamaño que se
desea resolver"
² Es una medida de la cantidad de recursos
que necesita un algoritmo"
3. Recurso
Definición
de
complejidad
del
algoritmo
Espacio
Can+dad
de
memoria
requerida
para
su
ejecución
También
está
asociada
a
las
estructuras
de
datos
usadas
en
su
implementación
Tiempo
Se
asocia
a
la
can+dad
de
+empo
que
necesita
el
algoritmo
para
realizar
la
ejecución
de
sus
operaciones
4. Cada algoritmo se comporta
diferente , dependiendo de las
variables de entrada que posea
(como entreguen la información).
Por ende, se debe estudiar su
comportamiento en casos
extremos. !
5. Complejidad!
• Peor caso : Indica cuántas operaciones
tienen que realizar los algoritmos para
garantizar que se producirá una solución"
• Caso Promedio : Se busca el promedio de
operaciones realizadas para solucionar un
problema considerando toda posible
entrada con un tamaño determinado"
6. Tiempo de Ejecución!
"
• Se mide con la función T(n)"
• Se puede medir físicamente ejecutando
el programa, contando las instrucciones
a ejecutar multiplicado por el tiempo
que se demora en ejecutar cada
instrucción."
7. Notación Asintótica!
• Matemáticamente hablando : N -> ∞"
• Esta función analiza el comportamiento de
las funciones en base a su tasa de
crecimiento"
• La complejidad del algoritmo se denota
según la notación Big-O"
• N debe ser número natural."
8. Ventajas y Desventajas : Matriz
de Adyacencia!
Ventajas
Desventajas
Se
puede
determinar
en
un
+empo
fijo
y
constante
si
un
enlace
pertenece
o
no
al
grafo.
Se
requiere
almacenamiento
|v*v|
.
O
sea
O(n2).
Es
fácil
determinar
si
existe
o
no
un
arco
o
enlace,
sólo
se
debe
posicionar
en
la
matriz.
Sólo
al
leer
o
examinar
la
matriz
puede
llevar
un
+empo
de
sea
O(n2)
,
siendo
por
ende,
demoroso.
Es
fácil
determinar
si
existe
un
ciclo
en
el
grafo,
para
eso
se
debe
mul+plicar
la
matriz
por
ella
misma
“n”
veces
hasta
obtener
una
matriz
nula
(Matriz
solo
con
valores
0)
o
bien,
una
sucesión
periódica
de
matrices
(hay
ciclo)