SlideShare une entreprise Scribd logo
1  sur  35
Universidad de Caldas Facultad de Ingenieria A A nalisis de lgoritmos
INPUT:  Una secuencia de numeros <a 1 ,a 2 ,a 3 ,...,a n > ,[object Object],[object Object],[object Object],[object Object],[object Object],Ordenamiento  x Insercion
Ordenamiento x Insercion  9 7 6 15 16 5 10 11 9 7 6 15 16 5 10 11 9 7 6 15 16 5 10 11 7 9 6 15 16 5 10 11 7 9 6 15 16 5 10 11 7 9 6 15 16 5 10 11 6 7 9 15 16 5 10 11 6 7 9 15 16 5 10 11 6 7 9 15 16 5 10 11 6 7 9 15 16 5 10 11 6 7 9 15 16 5 10 11 5 6 7 9 15 16 10 11 5 6 7 9 15 16 10 11 5 6 7 9 15 16 10 11 5 6 7 9 10 15 16 11 5 6 7 9 10 15 16 11 5 6 7 9 10 15 16 11 5 6 7 9 10 11 15 16 5 6 7 9 10 11 15 16
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
4 3 5 2 i j i=2  1 3 x A i 3 5 2 i j 1 3 i 4 j = i-1 = 1 j = j-1 = 0 Exit while because j<0
3 5 2 j i=3 1 5 x A i 4 Exit while because x >A[i] j = i-1 = 2
3 2 5 4 j i=4  1 2 i 3 5 j 1 2 i 4 j = i-1 = 3 j = j-1 = 2 5
3 4 4 j 1 2 i 3 j 1 2 i 4 j = j-1 =1 j = j-1 = 0 5 5 2
2 1 4 3 j i=5  5 1 i 2 4 j 1 i 3 j = i-1 = 4 j = j-1 =3 5 5
3 4 4 j 1 2 i 3 j 1 2 i 4 j = j-1 =1 j = j-1 = 0 5 5 2
2 4 j 1 i 3 j = j-1 =2 4 5 2 3 j 1 i 3 j = j-1 =2 4 5 1 3 1 2 4 5
Correctitud ,[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Loop Invariante para Insertion-sort   En el principio de cada iteracion del loop for el sub-arreglo A[1,..,i-1] consiste de los  elementos original/ in A[1,..,i-1] pero en orden.
Antes de empezar el loop  i=2,  el sub-arreglo A[1,..,i-1] consiste unica/ del A[1], el cual es de hecho el elemento original A[1]. Este sub-arreglo es ordenado (trivial/, por supuesto). INICIALIZACION
x 1 x 2 x 3 ... i j ... x n Antes de empezar la iteracion i=2 max{x 1  ,   x 2  } i j ... x n min{x 1  ,   x 2  } MANTENIMIENTO Antes de empezar la iteracion i=3
i j ... x n x i 1 max{x 1  ,   x 2  } i j ... x n min{x 1  ,   x 2  } x 3 x i 2 x i 3 {x i 1  ,x i 2  ,x i 3  }= {x 1  ,x 2  ,x 3   } x i 1 < x i 2  <   x i 3 Antes de empezar la iteracion i=3 Antes de empezal la iteracion i=4
i j i j {x i 1  ,x i 2  ,...,x i k  }= {x 1  ,x 2  ,...,x 3   } x i 1 < x i 2  <...<   x i 3 Antes de empezar la iteracion i=k Antes de empezar la iteracion   i=k+1 ... x n x i 1 x i 2 x i 3 ... x i k-1 x k ... x n x i 1 x i 2 x i 3 ... x i k-1 x i k
En la terminacion i=n+1 el sub-arreglo A[1,..,i-1] consiste de los elementos en el arreglo original A[1,..,n] pero de manaera ordenada. Por esto el algoritmo es correcto. TERMINACION
Cantidad de trabajo realizado ,[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object]
Como analizamos el tiempo de ejecución de un algoritmo ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Tiempo de Ejecucion:  Sobre una entrada particular es el numero de operaciones primitivas (pasos) ejecutados . •  Queremos definir los pasos independientes de la maquina . •  Suponga que c/linea de pseudocodigo requiere una cantidad constante de tiempo. •  Una  linea puede tomar una cantidad diferente de tiempo que otra,  pero cada  ejecucion de la linea i toma la misma cantidad de tiempo  ci  . •  Esto es asumiendo que la linea consiste unica/ de operaciones primitivas  •  Si la linea es una llamada a subrutina, entonces la llamada actual toma un tiempo constante,  pero la ejecucion de la subrutina siendo llamada  podria no. •  Si la linea especifica operaciones diferentes a las primitivas entonces podria tomar mas que un tiempo constante. Ej: “ordene los puntos por coordenadas x.”
Analisis del ordenamiento  x Insercion ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],El tiempo de ejecucion del  algoritmo es
complejidad en tiempo ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
El tiempo de ejecucion del algoritmo es la suma de los tiempos de ejecucion para c/sentencia ejecutada.Para computar T(n), el tiempo de ejecucion del algoritmo, nosotros sumamos los productos de COSTO y VECES obteniendo: El tiempo de ejecucion depende de los valores de  t j  . Estos varian de acuerdo con la entrada.
Complejidad de tiempo en el mejor caso  t b (n)   En este caso  t i  = 1  entonces  t b (n)  =  c 1 n + (c 2 +c 4 +c 8  ) n-1 +  c 5    i=2,..,n   1  +  (c 6 +c 7 )   i=2,..,n   0 = (c 1 +c 2 +c 4 +c 8 +c 5  ) n - (c 2 +c 4 +c 8 +c 5  )  = an+b  =     (n).  Puede expresar  T (n) como   an + b para  constantes  a  y  b  (que dependen del costo de la sentencia  ci  )⇒  T (n) es una funcion   lineal de   n . Complejidad de tiempo en el peor caso   t w (n)   En este caso  t i  = i   entonces  t w (n)  =  c 1 n + (c 2 +c 4 +c 8  ) n-1 +  c 5    i=2,..,n   i +  (c 6 +c 7 )   i=2,..,n   (i-1) = an 2 +bn+c =     ( n 2 ).
Complejidad de tiempo en el caso Promedio t a (n)   En este caso promedio  t i  =  ( i+1 )/2 then  t w (n)  =  c 1 n + (c 2 +c 4 +c 8  ) n-1 +  c 5    i=2,..,n   (i+1)/2 +  (c 6 +c 7 )   i=2,..,n   i/2 = an 2 +bn+c =     ( n 2 ).  ,[object Object],[object Object],[object Object],[object Object]
Analisis del peor caso y del caso promedio ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Orden de crecimiento ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Porque hay que buscar la eficiencia Tendra sentido invertir tiempo intentando diseñar algoritmos mas eficientes sabiendo que las computadoras se vuelven mas y mas rápidas? Supongamos que que para resolver un problema disponemos de  de un algoritmo exponencial y de una computadora que puede ejecutar este algoritmo para casos de tamaño n en 10 -4  x 2 n  segundos. Es decir el programa resuelve un ejemplar de tamaño 10 en aprox. un décimo de seg., uno de tamaño 20 en aprox. Dos minutos y para resolver un ejemplar de tamaño 30 no bastará todo un dia de tiempo de cálculo.  Suponiendo que fuera posible hacer funcionar un año seguido la máquina se podría llegar a resolver un ejemplar de tamaño 38. Supongamos que podemos comprar una computadora 100 veces mas rápida que la anterior. Ahora con el mismo algoritmo podemos resolver  un ejemplar de tamaño n en _________seg. No mucho, pero cuando determine que la nueva maquina en un año no podrá resolver nisiquiera un ejemplar de tamaño 45. En genral si antes se podía resolver un ejemplar de tamaño n en un tiempo determinado, la nueva máquina resolverá ejemplares de tamaño como máximo ___________ en el mismo tiempo.
[object Object],[object Object]
CUANDO QUEDA ESPECIFICADO UN ALGORITMO ,[object Object],[object Object],[object Object],[object Object],[object Object]
Ejercicio ,[object Object],[object Object]

Contenu connexe

Tendances

Análisis de complejidad introducción notación big o
Análisis de complejidad   introducción notación big oAnálisis de complejidad   introducción notación big o
Análisis de complejidad introducción notación big oUVM
 
Análisis de colisiones de hashes sha1 y resolviendo un problema de hashing re...
Análisis de colisiones de hashes sha1 y resolviendo un problema de hashing re...Análisis de colisiones de hashes sha1 y resolviendo un problema de hashing re...
Análisis de colisiones de hashes sha1 y resolviendo un problema de hashing re...Diego Hernan Marciano
 
Tema 2 eficiencia y complejidad
Tema 2 eficiencia y complejidadTema 2 eficiencia y complejidad
Tema 2 eficiencia y complejidadCarlos A. Iglesias
 
Arreglo unidimensionales y bidimensionales
Arreglo unidimensionales y bidimensionalesArreglo unidimensionales y bidimensionales
Arreglo unidimensionales y bidimensionalesMarco Garay
 
Unidad 4 est. dat. recursividad
Unidad 4  est. dat. recursividadUnidad 4  est. dat. recursividad
Unidad 4 est. dat. recursividadrehoscript
 
Recursividad
RecursividadRecursividad
Recursividadbetzy
 
Jflambert lyada - ayudantia ordenamiento y teo maestro
Jflambert   lyada - ayudantia ordenamiento y teo maestroJflambert   lyada - ayudantia ordenamiento y teo maestro
Jflambert lyada - ayudantia ordenamiento y teo maestroFrancisco Lambert Obediente
 
Analisis de algoritmos tarea 2
Analisis de algoritmos tarea 2Analisis de algoritmos tarea 2
Analisis de algoritmos tarea 2Velmuz Buzz
 
Introduccion a C++
Introduccion a C++Introduccion a C++
Introduccion a C++LenHugo
 

Tendances (20)

Análisis de complejidad introducción notación big o
Análisis de complejidad   introducción notación big oAnálisis de complejidad   introducción notación big o
Análisis de complejidad introducción notación big o
 
Informe
InformeInforme
Informe
 
Analisis Algoritmo
Analisis AlgoritmoAnalisis Algoritmo
Analisis Algoritmo
 
Análisis de colisiones de hashes sha1 y resolviendo un problema de hashing re...
Análisis de colisiones de hashes sha1 y resolviendo un problema de hashing re...Análisis de colisiones de hashes sha1 y resolviendo un problema de hashing re...
Análisis de colisiones de hashes sha1 y resolviendo un problema de hashing re...
 
Complejidad de Algoritmos
Complejidad de AlgoritmosComplejidad de Algoritmos
Complejidad de Algoritmos
 
Divide y Vencerás
Divide y VencerásDivide y Vencerás
Divide y Vencerás
 
Recursividad
RecursividadRecursividad
Recursividad
 
Tema 2 eficiencia y complejidad
Tema 2 eficiencia y complejidadTema 2 eficiencia y complejidad
Tema 2 eficiencia y complejidad
 
Algoritmos divide y vencerás
Algoritmos divide y vencerásAlgoritmos divide y vencerás
Algoritmos divide y vencerás
 
Interpolaion c++
Interpolaion c++Interpolaion c++
Interpolaion c++
 
Arreglo unidimensionales y bidimensionales
Arreglo unidimensionales y bidimensionalesArreglo unidimensionales y bidimensionales
Arreglo unidimensionales y bidimensionales
 
Tema ii integrales uney
Tema ii integrales uneyTema ii integrales uney
Tema ii integrales uney
 
Divide y Venceras
Divide y VencerasDivide y Venceras
Divide y Venceras
 
Unidad 4 est. dat. recursividad
Unidad 4  est. dat. recursividadUnidad 4  est. dat. recursividad
Unidad 4 est. dat. recursividad
 
Recursividad
RecursividadRecursividad
Recursividad
 
Solucion taller 1 de control 2
Solucion taller 1 de control 2Solucion taller 1 de control 2
Solucion taller 1 de control 2
 
Jflambert lyada - ayudantia ordenamiento y teo maestro
Jflambert   lyada - ayudantia ordenamiento y teo maestroJflambert   lyada - ayudantia ordenamiento y teo maestro
Jflambert lyada - ayudantia ordenamiento y teo maestro
 
Tema4
Tema4Tema4
Tema4
 
Analisis de algoritmos tarea 2
Analisis de algoritmos tarea 2Analisis de algoritmos tarea 2
Analisis de algoritmos tarea 2
 
Introduccion a C++
Introduccion a C++Introduccion a C++
Introduccion a C++
 

En vedette

Matriz reunión departamentales 09 08-13
Matriz reunión departamentales 09 08-13Matriz reunión departamentales 09 08-13
Matriz reunión departamentales 09 08-13Adalberto
 
Famous Movie Couples
Famous Movie CouplesFamous Movie Couples
Famous Movie Couplesmaditabalnco
 
Inria - Extrait du ctalogue logiciels technologies du web et de la mobilité a...
Inria - Extrait du ctalogue logiciels technologies du web et de la mobilité a...Inria - Extrait du ctalogue logiciels technologies du web et de la mobilité a...
Inria - Extrait du ctalogue logiciels technologies du web et de la mobilité a...Inria
 
À quoi servent les relations entre les tables Access et comment les créer ?
À quoi servent les relations entre les tables Access et comment les créer ?À quoi servent les relations entre les tables Access et comment les créer ?
À quoi servent les relations entre les tables Access et comment les créer ?Votre Assistante
 
Les règles typographiques #1
Les règles typographiques #1Les règles typographiques #1
Les règles typographiques #1Votre Assistante
 
Pres lia 27 9 2013
Pres lia 27 9 2013Pres lia 27 9 2013
Pres lia 27 9 2013Oscar Ayala
 
Diez Prieto Bloque 5
Diez Prieto Bloque 5Diez Prieto Bloque 5
Diez Prieto Bloque 5juegayaprende
 
20080506 Avances Y Retos Para El Futuro Opt
20080506 Avances Y Retos Para El Futuro Opt20080506 Avances Y Retos Para El Futuro Opt
20080506 Avances Y Retos Para El Futuro OptAdalberto
 
Минздрав утвердил порядок регулярных медицинских осмотров
Минздрав утвердил порядок регулярных медицинских осмотровМинздрав утвердил порядок регулярных медицинских осмотров
Минздрав утвердил порядок регулярных медицинских осмотровPiter Lokshin
 
12 violencia en los centros escolares asesores pedagógicos
12 violencia en los centros escolares asesores pedagógicos12 violencia en los centros escolares asesores pedagógicos
12 violencia en los centros escolares asesores pedagógicosAdalberto
 
Poa entregado a pulacho 2010
Poa  entregado a pulacho 2010Poa  entregado a pulacho 2010
Poa entregado a pulacho 2010Adalberto
 
Butlletí n.50 Acció de Govern
Butlletí n.50 Acció de GovernButlletí n.50 Acció de Govern
Butlletí n.50 Acció de Governsocialistes_ cat
 
Evaluac ión 5
Evaluac ión 5Evaluac ión 5
Evaluac ión 5Adalberto
 
Revista humanismo
Revista humanismoRevista humanismo
Revista humanismoAdalberto
 

En vedette (20)

Tropical top
Tropical topTropical top
Tropical top
 
Matriz reunión departamentales 09 08-13
Matriz reunión departamentales 09 08-13Matriz reunión departamentales 09 08-13
Matriz reunión departamentales 09 08-13
 
Famous Movie Couples
Famous Movie CouplesFamous Movie Couples
Famous Movie Couples
 
Quesreppol sne
Quesreppol sneQuesreppol sne
Quesreppol sne
 
Inria - Extrait du ctalogue logiciels technologies du web et de la mobilité a...
Inria - Extrait du ctalogue logiciels technologies du web et de la mobilité a...Inria - Extrait du ctalogue logiciels technologies du web et de la mobilité a...
Inria - Extrait du ctalogue logiciels technologies du web et de la mobilité a...
 
À quoi servent les relations entre les tables Access et comment les créer ?
À quoi servent les relations entre les tables Access et comment les créer ?À quoi servent les relations entre les tables Access et comment les créer ?
À quoi servent les relations entre les tables Access et comment les créer ?
 
Les règles typographiques #1
Les règles typographiques #1Les règles typographiques #1
Les règles typographiques #1
 
Pres lia 27 9 2013
Pres lia 27 9 2013Pres lia 27 9 2013
Pres lia 27 9 2013
 
Agence Summer
Agence SummerAgence Summer
Agence Summer
 
Rene Descartes
Rene DescartesRene Descartes
Rene Descartes
 
Diez Prieto Bloque 5
Diez Prieto Bloque 5Diez Prieto Bloque 5
Diez Prieto Bloque 5
 
20080506 Avances Y Retos Para El Futuro Opt
20080506 Avances Y Retos Para El Futuro Opt20080506 Avances Y Retos Para El Futuro Opt
20080506 Avances Y Retos Para El Futuro Opt
 
Минздрав утвердил порядок регулярных медицинских осмотров
Минздрав утвердил порядок регулярных медицинских осмотровМинздрав утвердил порядок регулярных медицинских осмотров
Минздрав утвердил порядок регулярных медицинских осмотров
 
12 violencia en los centros escolares asesores pedagógicos
12 violencia en los centros escolares asesores pedagógicos12 violencia en los centros escolares asesores pedagógicos
12 violencia en los centros escolares asesores pedagógicos
 
Poa entregado a pulacho 2010
Poa  entregado a pulacho 2010Poa  entregado a pulacho 2010
Poa entregado a pulacho 2010
 
Butlletí n.50 Acció de Govern
Butlletí n.50 Acció de GovernButlletí n.50 Acció de Govern
Butlletí n.50 Acció de Govern
 
Etre Chats
Etre ChatsEtre Chats
Etre Chats
 
Evaluac ión 5
Evaluac ión 5Evaluac ión 5
Evaluac ión 5
 
Revista humanismo
Revista humanismoRevista humanismo
Revista humanismo
 
Conventions 2014 2018
Conventions 2014 2018Conventions 2014 2018
Conventions 2014 2018
 

Similaire à Analisis Clase2

Similaire à Analisis Clase2 (20)

ANALISIS DE ALGORITMOS
ANALISIS DE ALGORITMOSANALISIS DE ALGORITMOS
ANALISIS DE ALGORITMOS
 
Jflambert lyada - ayudantia matematicas discretas
Jflambert   lyada - ayudantia matematicas discretasJflambert   lyada - ayudantia matematicas discretas
Jflambert lyada - ayudantia matematicas discretas
 
Notación Asintótica
Notación AsintóticaNotación Asintótica
Notación Asintótica
 
Cap2.1
Cap2.1Cap2.1
Cap2.1
 
AnáLisis De Algoritmos1
AnáLisis De Algoritmos1AnáLisis De Algoritmos1
AnáLisis De Algoritmos1
 
11 estructuras de repeticion-tema11
11 estructuras de repeticion-tema1111 estructuras de repeticion-tema11
11 estructuras de repeticion-tema11
 
Analisis de algoritmos
Analisis de algoritmosAnalisis de algoritmos
Analisis de algoritmos
 
05 - Analisis de Algoritmos.pptx
05 - Analisis de Algoritmos.pptx05 - Analisis de Algoritmos.pptx
05 - Analisis de Algoritmos.pptx
 
dqwrwer
dqwrwerdqwrwer
dqwrwer
 
Métodos Directos
Métodos DirectosMétodos Directos
Métodos Directos
 
Aritmetica
AritmeticaAritmetica
Aritmetica
 
Tema4 programación generica
Tema4   programación genericaTema4   programación generica
Tema4 programación generica
 
Cap 02.1 analisis de las estructuras de control(1)
Cap 02.1   analisis de las estructuras de control(1)Cap 02.1   analisis de las estructuras de control(1)
Cap 02.1 analisis de las estructuras de control(1)
 
Módulo 3
Módulo 3Módulo 3
Módulo 3
 
Algoritmos de ordeamiento
Algoritmos de ordeamientoAlgoritmos de ordeamiento
Algoritmos de ordeamiento
 
Algoritmos de ordenación
Algoritmos de ordenaciónAlgoritmos de ordenación
Algoritmos de ordenación
 
Eficiencia en uso tiempo
Eficiencia en uso  tiempoEficiencia en uso  tiempo
Eficiencia en uso tiempo
 
Complejidad
ComplejidadComplejidad
Complejidad
 
Eficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa RamirezEficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa Ramirez
 
Actividad integradora 2
Actividad integradora 2Actividad integradora 2
Actividad integradora 2
 

Plus de luzenith_g

Formacion y crecimiento
Formacion y crecimientoFormacion y crecimiento
Formacion y crecimientoluzenith_g
 
Formacion y crecimiento
Formacion y crecimientoFormacion y crecimiento
Formacion y crecimientoluzenith_g
 
Carácterísticas técnicas de las wikis
Carácterísticas técnicas de las wikisCarácterísticas técnicas de las wikis
Carácterísticas técnicas de las wikisluzenith_g
 
Ejercicios Ada
Ejercicios AdaEjercicios Ada
Ejercicios Adaluzenith_g
 
Ejercicios Ada
Ejercicios AdaEjercicios Ada
Ejercicios Adaluzenith_g
 
Proyecto Unal2009 2
Proyecto Unal2009 2Proyecto Unal2009 2
Proyecto Unal2009 2luzenith_g
 
Taller3 Programacion Ii
Taller3 Programacion IiTaller3 Programacion Ii
Taller3 Programacion Iiluzenith_g
 
Algoritmos Voraces (Greedy)
Algoritmos Voraces (Greedy)Algoritmos Voraces (Greedy)
Algoritmos Voraces (Greedy)luzenith_g
 
Algoritmos Greedy
Algoritmos GreedyAlgoritmos Greedy
Algoritmos Greedyluzenith_g
 
Clase3 Notacion
Clase3 NotacionClase3 Notacion
Clase3 Notacionluzenith_g
 
Introducción al Análisis y diseño de algoritmos
Introducción al Análisis y diseño de algoritmosIntroducción al Análisis y diseño de algoritmos
Introducción al Análisis y diseño de algoritmosluzenith_g
 
Como construir un DSS
Como construir un DSSComo construir un DSS
Como construir un DSSluzenith_g
 
State Space Search(2)
State Space Search(2)State Space Search(2)
State Space Search(2)luzenith_g
 
DSS:Conceptos, metodologias y Tecnologias
DSS:Conceptos, metodologias y TecnologiasDSS:Conceptos, metodologias y Tecnologias
DSS:Conceptos, metodologias y Tecnologiasluzenith_g
 
Soporte a las Decisiones Computarizado
Soporte a las Decisiones ComputarizadoSoporte a las Decisiones Computarizado
Soporte a las Decisiones Computarizadoluzenith_g
 
Decision Support Systems
Decision Support SystemsDecision Support Systems
Decision Support Systemsluzenith_g
 

Plus de luzenith_g (20)

Formacion y crecimiento
Formacion y crecimientoFormacion y crecimiento
Formacion y crecimiento
 
Formacion y crecimiento
Formacion y crecimientoFormacion y crecimiento
Formacion y crecimiento
 
Carácterísticas técnicas de las wikis
Carácterísticas técnicas de las wikisCarácterísticas técnicas de las wikis
Carácterísticas técnicas de las wikis
 
Web 2 0
Web 2 0Web 2 0
Web 2 0
 
Alg1
Alg1Alg1
Alg1
 
Ejercicios Ada
Ejercicios AdaEjercicios Ada
Ejercicios Ada
 
Ejercicios Ada
Ejercicios AdaEjercicios Ada
Ejercicios Ada
 
Proyecto Unal2009 2
Proyecto Unal2009 2Proyecto Unal2009 2
Proyecto Unal2009 2
 
Taller3 Programacion Ii
Taller3 Programacion IiTaller3 Programacion Ii
Taller3 Programacion Ii
 
Algoritmos Voraces (Greedy)
Algoritmos Voraces (Greedy)Algoritmos Voraces (Greedy)
Algoritmos Voraces (Greedy)
 
Algoritmos Greedy
Algoritmos GreedyAlgoritmos Greedy
Algoritmos Greedy
 
Resumen
ResumenResumen
Resumen
 
Clase3 Notacion
Clase3 NotacionClase3 Notacion
Clase3 Notacion
 
Introducción al Análisis y diseño de algoritmos
Introducción al Análisis y diseño de algoritmosIntroducción al Análisis y diseño de algoritmos
Introducción al Análisis y diseño de algoritmos
 
Como construir un DSS
Como construir un DSSComo construir un DSS
Como construir un DSS
 
Mergesort
MergesortMergesort
Mergesort
 
State Space Search(2)
State Space Search(2)State Space Search(2)
State Space Search(2)
 
DSS:Conceptos, metodologias y Tecnologias
DSS:Conceptos, metodologias y TecnologiasDSS:Conceptos, metodologias y Tecnologias
DSS:Conceptos, metodologias y Tecnologias
 
Soporte a las Decisiones Computarizado
Soporte a las Decisiones ComputarizadoSoporte a las Decisiones Computarizado
Soporte a las Decisiones Computarizado
 
Decision Support Systems
Decision Support SystemsDecision Support Systems
Decision Support Systems
 

Dernier

TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxNadiaMartnez11
 
Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.JonathanCovena1
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxBeatrizQuijano2
 
Infografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfInfografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfAlfaresbilingual
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024IES Vicent Andres Estelles
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfapunteshistoriamarmo
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfJonathanCovena1
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfRosabel UA
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfUPTAIDELTACHIRA
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxroberthirigoinvasque
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...jlorentemartos
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024IES Vicent Andres Estelles
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfGruberACaraballo
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOluismii249
 
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxRESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxpvtablets2023
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Juan Martín Martín
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIAFabiolaGarcia751855
 

Dernier (20)

TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
 
Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
Lecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigosLecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigos
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptx
 
Infografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdfInfografía EE con pie del 2023 (3)-1.pdf
Infografía EE con pie del 2023 (3)-1.pdf
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdf
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdf
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxRESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
 
Sesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdfSesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdf
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
 

Analisis Clase2

  • 1. Universidad de Caldas Facultad de Ingenieria A A nalisis de lgoritmos
  • 2.
  • 3. Ordenamiento x Insercion 9 7 6 15 16 5 10 11 9 7 6 15 16 5 10 11 9 7 6 15 16 5 10 11 7 9 6 15 16 5 10 11 7 9 6 15 16 5 10 11 7 9 6 15 16 5 10 11 6 7 9 15 16 5 10 11 6 7 9 15 16 5 10 11 6 7 9 15 16 5 10 11 6 7 9 15 16 5 10 11 6 7 9 15 16 5 10 11 5 6 7 9 15 16 10 11 5 6 7 9 15 16 10 11 5 6 7 9 15 16 10 11 5 6 7 9 10 15 16 11 5 6 7 9 10 15 16 11 5 6 7 9 10 15 16 11 5 6 7 9 10 11 15 16 5 6 7 9 10 11 15 16
  • 4.
  • 5. 4 3 5 2 i j i=2 1 3 x A i 3 5 2 i j 1 3 i 4 j = i-1 = 1 j = j-1 = 0 Exit while because j<0
  • 6. 3 5 2 j i=3 1 5 x A i 4 Exit while because x >A[i] j = i-1 = 2
  • 7. 3 2 5 4 j i=4 1 2 i 3 5 j 1 2 i 4 j = i-1 = 3 j = j-1 = 2 5
  • 8. 3 4 4 j 1 2 i 3 j 1 2 i 4 j = j-1 =1 j = j-1 = 0 5 5 2
  • 9. 2 1 4 3 j i=5 5 1 i 2 4 j 1 i 3 j = i-1 = 4 j = j-1 =3 5 5
  • 10. 3 4 4 j 1 2 i 3 j 1 2 i 4 j = j-1 =1 j = j-1 = 0 5 5 2
  • 11. 2 4 j 1 i 3 j = j-1 =2 4 5 2 3 j 1 i 3 j = j-1 =2 4 5 1 3 1 2 4 5
  • 12.
  • 13.
  • 14. Loop Invariante para Insertion-sort En el principio de cada iteracion del loop for el sub-arreglo A[1,..,i-1] consiste de los elementos original/ in A[1,..,i-1] pero en orden.
  • 15. Antes de empezar el loop i=2, el sub-arreglo A[1,..,i-1] consiste unica/ del A[1], el cual es de hecho el elemento original A[1]. Este sub-arreglo es ordenado (trivial/, por supuesto). INICIALIZACION
  • 16. x 1 x 2 x 3 ... i j ... x n Antes de empezar la iteracion i=2 max{x 1 , x 2 } i j ... x n min{x 1 , x 2 } MANTENIMIENTO Antes de empezar la iteracion i=3
  • 17. i j ... x n x i 1 max{x 1 , x 2 } i j ... x n min{x 1 , x 2 } x 3 x i 2 x i 3 {x i 1 ,x i 2 ,x i 3 }= {x 1 ,x 2 ,x 3 } x i 1 < x i 2 < x i 3 Antes de empezar la iteracion i=3 Antes de empezal la iteracion i=4
  • 18. i j i j {x i 1 ,x i 2 ,...,x i k }= {x 1 ,x 2 ,...,x 3 } x i 1 < x i 2 <...< x i 3 Antes de empezar la iteracion i=k Antes de empezar la iteracion i=k+1 ... x n x i 1 x i 2 x i 3 ... x i k-1 x k ... x n x i 1 x i 2 x i 3 ... x i k-1 x i k
  • 19. En la terminacion i=n+1 el sub-arreglo A[1,..,i-1] consiste de los elementos en el arreglo original A[1,..,n] pero de manaera ordenada. Por esto el algoritmo es correcto. TERMINACION
  • 20.
  • 21.
  • 22.
  • 23. Tiempo de Ejecucion: Sobre una entrada particular es el numero de operaciones primitivas (pasos) ejecutados . • Queremos definir los pasos independientes de la maquina . • Suponga que c/linea de pseudocodigo requiere una cantidad constante de tiempo. • Una linea puede tomar una cantidad diferente de tiempo que otra, pero cada ejecucion de la linea i toma la misma cantidad de tiempo ci . • Esto es asumiendo que la linea consiste unica/ de operaciones primitivas • Si la linea es una llamada a subrutina, entonces la llamada actual toma un tiempo constante, pero la ejecucion de la subrutina siendo llamada podria no. • Si la linea especifica operaciones diferentes a las primitivas entonces podria tomar mas que un tiempo constante. Ej: “ordene los puntos por coordenadas x.”
  • 24.
  • 25.
  • 26. El tiempo de ejecucion del algoritmo es la suma de los tiempos de ejecucion para c/sentencia ejecutada.Para computar T(n), el tiempo de ejecucion del algoritmo, nosotros sumamos los productos de COSTO y VECES obteniendo: El tiempo de ejecucion depende de los valores de t j . Estos varian de acuerdo con la entrada.
  • 27. Complejidad de tiempo en el mejor caso t b (n) En este caso t i = 1 entonces t b (n) = c 1 n + (c 2 +c 4 +c 8 ) n-1 + c 5  i=2,..,n 1 + (c 6 +c 7 )  i=2,..,n 0 = (c 1 +c 2 +c 4 +c 8 +c 5 ) n - (c 2 +c 4 +c 8 +c 5 ) = an+b =  (n). Puede expresar T (n) como an + b para constantes a y b (que dependen del costo de la sentencia ci )⇒ T (n) es una funcion lineal de n . Complejidad de tiempo en el peor caso t w (n) En este caso t i = i entonces t w (n) = c 1 n + (c 2 +c 4 +c 8 ) n-1 + c 5  i=2,..,n i + (c 6 +c 7 )  i=2,..,n (i-1) = an 2 +bn+c =  ( n 2 ).
  • 28.
  • 29.
  • 30.
  • 31.
  • 32. Porque hay que buscar la eficiencia Tendra sentido invertir tiempo intentando diseñar algoritmos mas eficientes sabiendo que las computadoras se vuelven mas y mas rápidas? Supongamos que que para resolver un problema disponemos de de un algoritmo exponencial y de una computadora que puede ejecutar este algoritmo para casos de tamaño n en 10 -4 x 2 n segundos. Es decir el programa resuelve un ejemplar de tamaño 10 en aprox. un décimo de seg., uno de tamaño 20 en aprox. Dos minutos y para resolver un ejemplar de tamaño 30 no bastará todo un dia de tiempo de cálculo. Suponiendo que fuera posible hacer funcionar un año seguido la máquina se podría llegar a resolver un ejemplar de tamaño 38. Supongamos que podemos comprar una computadora 100 veces mas rápida que la anterior. Ahora con el mismo algoritmo podemos resolver un ejemplar de tamaño n en _________seg. No mucho, pero cuando determine que la nueva maquina en un año no podrá resolver nisiquiera un ejemplar de tamaño 45. En genral si antes se podía resolver un ejemplar de tamaño n en un tiempo determinado, la nueva máquina resolverá ejemplares de tamaño como máximo ___________ en el mismo tiempo.
  • 33.
  • 34.
  • 35.