Análisis y Diseño de Algoritmos

18
Análisis y Diseño de Algoritmos

description

Análisis y Diseño de Algoritmos. Análisis y Diseño de Algoritmos. Análisis y Diseño de Algoritmos. Análisis y Diseño de Algoritmos. Análisis y Diseño de Algoritmos. Análisis y Diseño de Algoritmos. Análisis y Diseño de Algoritmos. Análisis y Diseño de Algoritmos. Propiedades : - PowerPoint PPT Presentation

Transcript of Análisis y Diseño de Algoritmos

Page 1: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Page 2: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Page 3: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Page 4: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Page 5: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Page 6: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Page 7: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Page 8: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Propiedades :

1.1.-     f ( n ) O ( f ( n ) )

2.   2.-   a ) O ( f ( n ) ) O ( g ( n ) ) f ( n ) g ( n )

b ) O ( f ( n ) ) = O ( g ( n ) ) f ( n ) g ( n ) y g ( n ) f ( n )

3.-     Si t ( n ) O ( f ( n ) ) y t’ ( n ) O ( g ( n ) )

a ) c * t ( n ) O ( f ( n ) )

b ) t ( n ) + t ‘ ( n ) O ( f ( n ) + g ( n ) ) = O [ max ( f ( n ) , g ( n ) ) ]

si f ( n ) es comparable asintóticamente con g ( n )

c ) t ( n ) * t’ ( n ) O ( f ( n ) g (n ) )

Ej. : t ( n ) = 3n² + 6n = ( 3n² + 6n ) = { 1º prioridad }

= O [ max ( 3n² , 6n ) ] = { 3º } = O ( 3n² ) ;

; 3n² O ( n² ) = { 3º a }

Ej. : t ( n ) = 4 log n + 6n = O ( log n + n ) = O [ max ( log n , n ) ] = O ( n )

4 log n O ( log n )

6n O ( n )

Page 9: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Operaciones Conjuntísticas :

 

1.      O ( f ( n ) ) + O ( g ( n ) ) = O ( f ( n ) + g ( n ) ) = 0 [ max ( f ( n ) , g ( n ) ) ]

si f y g son comparables

El conjunto suma esta formada por funciones se la forma t ( n ) + t’ ( n ) que pertenece respectivamente al 1º y 2º sumando.

2.      O ( f ( n ) ) * O ( g ( n ) ) = O ( f ( n ) g ( n ) )

Producto conjustístico esta formado por funciones del tipo t ( n ) * t‘ ( n ) que pertenecen respectivamente al primer factor y al segundo factor.

Ej. : t ( n ) = ( n² + n ) + log n (1ª) O [ ( n² + n ) log n ] = O [ ( n² + n ) O ( log n )] =

max ( n² , n )

= O ( n² ) O ( log n ) = O ( n² log n )

Page 10: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Page 11: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Page 12: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Notación Asintótica con varios Parámetros

 Si el tiempo de un algoritmo depende de dos parámetros de tiempo :

Sea f : N x N R*

( m , n ) f ( m , n )

O ( f ( m , n ) ) = { t : N x N R* | ( c > 0 ) ( m0 , n0 N )

( m m0 ) ( n n0 )

t ( m , n ) c f ( m , n ) }

Ej. : la multiplicación normal se números de longitudes m y n es un tiempo :

T ( m , n ) ( m n )

Del mismo modo se definen :

( f ( m , n ) ) y ( f ( m , n ) )

f ( n , m ) = O ( g ( n , m ) ) si c R c > 0 n0 N

| f ( n , m ) | c | g ( n , m ) |

Page 13: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Notación Asintótica Condicional

 

Definición :

F ( n ) = O ( g (n ) / P ( n ) ) si c > 0 c R n0 N

P ( n ) : N B | f ( n ) | c | g ( n ) | P ( n ) n 1

T ( n ) = O ( n² | n es par )

T ( n ) = O ( log n | n = ( 2 exp k ) )

Page 14: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

1.1.   Análisis de Algoritmos Iterativos

    1  La complejidad de toda asignación , lectura o escritura de variables simples es constante es decir O ( 1 ).

  2  El tiempo de ejecución de una secuencia de proposiciones se determina por la regla de la suma.

  3. El tiempo de ejecución de una proposición if, es el costo de las proposiciones que se ejecutan condicionalmente, Proposiciones verdaderas+ proposiciones falsas, más el tiempo para evaluar la condición

  4. El tiempo para ejecutar un ciclo, corresponde a la suma de las proposiciones que contiene dicho ciclo.

 5. Si existen ciclos anidados, el tiempo de ejecución del ciclo mas externo corresponde a la multiplicación de todos los ciclos.

Page 15: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Page 16: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Page 17: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos

Page 18: Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos