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 )

Slides:



Advertisements
Presentaciones similares
Diseño y análisis de algoritmos
Advertisements

Pippy (Python para niños)‏ 1.
Clase 2 Tipos de datos Asignación de valores Estructura IF Ejercicios
Programación Básica con NQC Pedro F. Toledo – Patricio Castillo 18/08/2006.
Estructuras de Repetición Algoritmos
Introducción a los Algoritmos
¿ Que es la complejidad de un algoritmo ?
Estructura General de Un Programa Programación Estructurada
Técnico en programación de Software
Unidad 4. Estructuras de selección
Concepto de programa. Directorio Concepto de programa. Analisis del problema. Resolucion del problema. Desarroollo de un programa. Partes constitutivas.
UNIVERSIDAD LATINA (UNILA) IV. IMPLANTACION DE ALGORITMOS.
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
Estructuras de Control
Curso de Programación I Parte III
3. INTRODUCCIÓN A LA PROGRAMACIÓN
Estructuras de control
ALGORITMOS 2 DIGITALES II
DSUPE Pseudocódigo.
Estructuras de Repetición
PARADIGMA Es un esquema de pensamiento que nos lleva a concebir las cosas de una manera determinada. el término paradigma puede indicar el concepto de esquema.
PSEUDOCÓDIGO. DISEÑO ESTRUCTURADO USANDO HERRAMIENTAS DE REPRESENTACIÓN DE ALGORITMOS.

Ingeniero Anyelo Quintero
ALGORITMOS es un conjunto preescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos.
ESTRUCTURAS DE CONTROL
UNIVERSIDAD DE MANAGUA I CUATRIMESTRE INTRODUCCION A LA PROGRAMACION
Fundamentos de Programación
Programación de Computadores
Academia de Informática
Matemáticas para Ciencias de la Computación MCC3182 Profesor: Claudio Gutiérrez Soto Página Web:
Programación en Matlab
Complejidad Programación II de febrero de 2009.
CORPORACIÓN UNIVERSITARIA REMINGTON
Capítulo 1 “Elementos de Programación”
SENTENCIAS DE CONTROL Ing. José Antonio Poma G..
M.S.C. Ivette Hernández Dávila

Sesión 5 Sentencias de Selección y repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
ESTRUCTURA DE DATOS ESD-243
Programación Básica con NQC Patricio A. Castillo Pizarro 25/08/2007.
Juego de Preguntas y Respuestas
Teoría – Alejandro Gonzalez
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
EXPRESIONES Y SENTENCIAS
ETAPAS PARA SOLUCIONAR UN PROBLEMA

Estructuras de Control.
Introducción a la programación
Análisis de Algoritmos
Análisis de algoritmos Generalidades
Términos algoritmo diseñar algoritmo implementar algoritmo
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa

Presente un cuestionario con los aspectos mas importantes sobre los
Tipos de Datos.
Prueba de escritorio Computación y Sistemas de Información.
Lic. Carla Aguirre Montalvo
* Cuando nos permite desarrollar un programa que necesitamos para tomar un conjunto de buenas prácticas para hacer eso. Esto se debe a que podemos ahorrar.
2011/1 - CLASE 12. AGENDA 1 Introducción 2 Sentencia while 3 Sentencia for 14 Sentencia do-while 5 Instrucciones Especiales 6 Ciclos anidados.
Conceptos Generales Programación I Docente: Ing. Marleny Soria M.
Las funciones son librerías ya estandarizadas que permiten al usuario realizar sus respectivas programaciones. Una función es un conjunto de líneas de.
75.41 Algoritmos y Programación II Cátedra Ing. Patricia Calvo Complejidad algorítmica.
Programación I Docente: Ing. Marleny Soria M..  Es un conjunto preescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar.
Conceptos Generales PROGRAMACIÓN I DOCENTE: ING. MARLENY SORIA M. 1.
Tema 8: Programación estructurada Introducción La importancia del conocimiento de programación es mucho mayor de lo que se piensa. Aprender a programar.
ESTRUCTURAS SELECTIVAS Elaborado por; Ing. Alberto Pérez.
LE, EI, Profesor Ramón Castro Liceaga UNIVERSIDAD LATINA (UNILA) IV. IMPLANTACION DE ALGORITMOS.
Ing. Barros Rodriguez D. Ronald Introducción a la Programacón.
Ciclos condicionales y exactos Estructura de control de ciclos
Transcripción de la presentación:

Análisis y Diseño de Algoritmos

Propiedades : f ( n )  O ( f ( n ) ) 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 )

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 )

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 ) |

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 ) )

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.

Análisis y Diseño de Algoritmos