Beruflich Dokumente
Kultur Dokumente
Complejidad Algortmica
Introduccin
Motivacin
Especificacin formal
.( Suma ( n )
i)
i 1
Verificacin formal
Ternas de Hoare
{P} S {Q}
Precondicin y postcondicin
Ternas de Hoare
Ejemplo 2:
{ y 0 } x=1/y { x=1/y }
Ejemplo 3:
{ } a=b { a=b }
Ejemplo 4:
P : {x X y Y
S :m x y
Q : {m X Y }
0 Y
0}
Complejidad algortmica
Algoritmia
Algoritmo
Caractersticas de un algoritmo
Entrada
Algoritmo
Salida
Cualidades de un algoritmo
Cualidades de un algoritmo
Evaluacin de algoritmos
Complejidad algortmica
Parmetros de la Eficiencia
Mas espacio
Menos espacio
Menor tiempo
Mayor tiempo
de la mquina
del lenguaje de programacin
del compilador
de cualquier otro elemento hardware o software que
influya en el anlisis.
el nmero en s
el nmero de dgitos o elementos que lo compone.
( CM
CP ) / 2
Notacin Asinttica
Notacin Asinttica
Notacin asinttica
Notacin asinttica
Notacin asinttica
F(n)
10-4 x 2n
10-6 x 2n
Complejidad asinttica
Notacin asinttica
log2n
nlog2n
n2
n3
2n
15
25
125
32
10
10
40
100
1000
1000
100
100
700
10000
106
1030
1000
10
1000
10000
106
109
10300
La mayor parte de
algoritmos son O(na), los
algoritmos ms eficientes
son O(log(n)); es muy
difcil lograr algoritmos
O(1) tiempo constante.
= 20 f (n)
<= 20 f(n)
Entonces t (n)
O (f (n))
T(n) = 3 n3 + 2 n2 es O (n3 )
Sean n0 = 0 y c = 5.
T(n) = ( n + 1) 2
T(n) es O (n2) , cuando n0 = 1 y c = 4, es decir para n >= 1
bn domina a cn si b>=c
nk domina a nm si k>=m
n! domina a bn
bn domina a na si a>=0
O(2)
O(2n)
fpara
fpara
Paso 2:
para i de 1 a n
para j de 1 a n
escribir i + j
fpara
fpara