SlideShare una empresa de Scribd logo
1 de 23
Análisis de
Algoritmos
Análisis de Algoritmos
Qué es Complejidad?.
Ordenes de Complejidad.
Complejidad de instrucciones básicas.
Algunos problemas clásicos.
Complejidad
¿Qué entiende Ud. por complejidad?
¿Cómo se mide la complejidad?
¿La complejidad está asociada a un problema o a una solución del
problema?
¿La complejidad depende de la implementación?
Complejidad
¿Qué se entiende por complejidad?
La Complejidad es una medida de laLa Complejidad es una medida de la
cantidad que consume un algoritmo de uncantidad que consume un algoritmo de un
recurso determinado.recurso determinado.
Complejidad
Problema: Pregunta sobre un conjunto dePregunta sobre un conjunto de
datos.datos.
Solución:Solución: Método general para resolverMétodo general para resolver
todas las posibles preguntas.todas las posibles preguntas.
Complejidad
Problema: XX = { (p(x),r(x)) | x= { (p(x),r(x)) | x ∈∈ D }.D }.
Solución:Solución: Es una relación A: PEs una relación A: P  R talR tal
que para cada preguntaque para cada pregunta
posible p, (p,A(p))posible p, (p,A(p)) ∈∈ XX..
Para un problemaPara un problema XX existen preguntas másexisten preguntas más
difíciles de resolver o más grandes que otras.difíciles de resolver o más grandes que otras.
Complejidad
Problema:
XX = { ((a,k),i) | a=A[0..n-1]= { ((a,k),i) | a=A[0..n-1] ∧∧
00 ≤ i ≤ n-1≤ i ≤ n-1 ∧∧
a[i] = ka[i] = k}.}.
Solución:Solución: Algoritmo de Búsqueda Lineal.Algoritmo de Búsqueda Lineal.
BL responde preguntas fáciles y preguntasBL responde preguntas fáciles y preguntas
difícilesdifíciles (¿de que depende la dificultad?).(¿de que depende la dificultad?).
Complejidad
Si el recurso es espacio:Si el recurso es espacio:
Cantidad de memoria requeridaCantidad de memoria requerida
para una ejecución.para una ejecución.
Si el recurso es tiempo:Si el recurso es tiempo:
Cantidad de tiempo requeridoCantidad de tiempo requerido
para una ejecución.para una ejecución.
n + 2n + 2..
depende!depende!
Complejidad
Búsqueda en un arregloBúsqueda en un arreglo::
{Pre Q: a=A[0..n-1]{Pre Q: a=A[0..n-1] ∧∧ x=X}x=X}
i:=0;i:=0;
dodo (i(i ≠ n≠ n ∧∧ a[i]≠x)a[i]≠x)  i:=i+1i:=i+1 odod
{Pos R: (i=n{Pos R: (i=n ∧∧ XX∉∉A)A) ∨∨ (0≤i<n(0≤i<n ∧∧ A[i]=X)}A[i]=X)}
Operación básica: Comparación.Operación básica: Comparación.
Si X está en la posición k: k +1 comparaciones.Si X está en la posición k: k +1 comparaciones.
Si X no está en A: n comparaciones.Si X no está en A: n comparaciones.
Complejidad
Búsqueda en un arregloBúsqueda en un arreglo::
TTBLIBLI (n) = n(n) = n en el peor caso.en el peor caso.
TTBLIBLI (n) = n – a(n-1)/2(n) = n – a(n-1)/2 en el caso promedio.en el caso promedio.
Complejidad
Búsqueda en un arregloBúsqueda en un arreglo::
TTBLIBLI (n) = n – a(n-1)/2(n) = n – a(n-1)/2 en el caso promedio.en el caso promedio.
TTBLIBLI (n) = (+ k | 0(n) = (+ k | 0≤k≤≤k≤n : qn : qnn(k) T(k) TBLIBLI(k))(k))
= (+ k | 0= (+ k | 0≤k<≤k<n : qn : qnn(k) T(k) TBLIBLI(k))+q(k))+qnn(n)T(n)TBLIBLI(n)(n)
= (+ k | 0= (+ k | 0≤k<≤k<n : (a/n) Tn : (a/n) TBLIBLI(k))+(1-a)n(k))+(1-a)n
= (+ k | 0= (+ k | 0≤k<≤k<n : (a/n) (k+1))+(1-a)nn : (a/n) (k+1))+(1-a)n
= n – a(n-1)/2= n – a(n-1)/2
Complejidad
Búsqueda en un arregloBúsqueda en un arreglo::
TTBLIBLI (n) = n – a(n-1)/2(n) = n – a(n-1)/2 en el caso promedio.en el caso promedio.
Casos interesantes:Casos interesantes:
XX ∈∈ AA ⇒⇒ a = 1 : Ta = 1 : TBLIBLI (n) = (n+1)/2(n) = (n+1)/2
a = ½ : Ta = ½ : TBLIBLI (n)(n) ≈≈ 3n/43n/4
XX ∉∉ AA ⇒⇒ a = 0 : Ta = 0 : T (n) = n(n) = n
Análisis de Algoritmos
Qué es Complejidad?.
Ordenes de Complejidad.
Complejidad de instrucciones básicas.
Un problema clásico.
Ordenes de Complejidad
Algoritmo 1 : T1(n) = 1000 n
Algoritmo 2 : T2(n) = 200 n log n
Algoritmo 3 : T3(n) = 10 n2
Algoritmo 4 : T4(n) = 2n
1 9 100
2 4 3 1
Ordenes de Complejidad
Establecer la complejidad precisa es difícil….
…entonces se estudia el comportamiento
asintótico.
Ordenes de Complejidad
A. Existen constantes C y D tales que para todo N el algoritmo ejecuta
en tiempo menor que CN2.5
+ D.
B. Para todo N pueden existir entradas que ejecutan en tiempo menor a N2.5
C. Para todo N pueden existir entradas que ejecutan en tiempo menor a N2.6
D. Para todo N pueden existir entradas que ejecutan en tiempo mayor a N2.4
E. Para todo N pueden existir entradas que ejecutan en tiempo mayor a N2.6
Cierto algoritmo se ejecuta en tiempo O(n2.5
),
donde n es el tamaño de la entrada. Cuál de
las afirmaciones NO es verdad?
Ordenes de Complejidad
n
T
k
De k en adelante un múltiplo de f supera a g
g es O(f)
Ordenes de Complejidad
De k en adelante un múltiplo de f supera a g
3 = O(n) 3n = O(n) 3n = O(n2
)
n = O(n log n) log n = O(n)
n7
= O(2n
)
g = O(f)
Ordenes de Complejidad
n
T
k
De k en adelante un múltiplo de f es inferior a g
g es Ω(f)
Ordenes de Complejidad
n
T
k
De k en adelante un múltiplo de f es superior a g y
otro múltiplo de f es inferior a g.
g es Θ(f)
Análisis de Algoritmos
Qué es Complejidad?.
Ordenes de Complejidad.
Complejidad de instrucciones básicas.
Un problema clásico.
Complejidad de Instrucciones Básicas
T(skip) = 0
T(abort) = 0
T(x := e) = O(T(e))
T(S1; S2) = O(T(S1)) + O(T(S2))
= O(max(T(S1),T(S2)))
T(IF) = O(max(T(Bk)) + max(T(Sk)))
T(DO) = O(t * (max(T(Bk)) + max(T(Sk))))
Complejidad de Instrucciones Básicas
for (i = 0, n – 2, i = i + 1) {
for (j = n -1, i + 1, j = j -1) {
if a[j-1] > a[j] then
{ temp = a[j];
a[j] = a[j-1];
a[j-1] = temp; }
else skip
fi
rof
rof
O(1)
O(1)
O(n-1-i)
O(n2
)

Más contenido relacionado

La actualidad más candente

Análisis de algoritmo
Análisis de algoritmoAnálisis de algoritmo
Análisis de algoritmoGaston Demundo
 
Eficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa RamirezEficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa RamirezVanessa Ramirez
 
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
 
Que es complejidad computacional
Que es complejidad computacionalQue es complejidad computacional
Que es complejidad computacionalJonathan Bastidas
 
Analisis de Algoritmos
Analisis de AlgoritmosAnalisis de Algoritmos
Analisis de Algoritmoszygdiaz
 
Tema 2 eficiencia y complejidad
Tema 2 eficiencia y complejidadTema 2 eficiencia y complejidad
Tema 2 eficiencia y complejidadCarlos A. Iglesias
 
Teoría de complejidad computacional (tcc)
Teoría de complejidad computacional (tcc)Teoría de complejidad computacional (tcc)
Teoría de complejidad computacional (tcc)Raquel Nuñez
 
Analisis de algoritmos
Analisis de algoritmosAnalisis de algoritmos
Analisis de algoritmosrehoscript
 
Tema 2 eficiencia_y_complejidad_grupo_21
Tema 2 eficiencia_y_complejidad_grupo_21Tema 2 eficiencia_y_complejidad_grupo_21
Tema 2 eficiencia_y_complejidad_grupo_21Carlos A. Iglesias
 
Algoritmos de ordeamiento
Algoritmos de ordeamientoAlgoritmos de ordeamiento
Algoritmos de ordeamientoYanahui Bc
 
Jflambert lyada - ayudantia matematicas discretas
Jflambert   lyada - ayudantia matematicas discretasJflambert   lyada - ayudantia matematicas discretas
Jflambert lyada - ayudantia matematicas discretasFrancisco Lambert Obediente
 
Análisis de complejidad big o
Análisis de complejidad  big o Análisis de complejidad  big o
Análisis de complejidad big o UVM
 

La actualidad más candente (18)

Análisis de algoritmo
Análisis de algoritmoAnálisis de algoritmo
Análisis de algoritmo
 
Eficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa RamirezEficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa Ramirez
 
Complejidad Computacional
Complejidad ComputacionalComplejidad Computacional
Complejidad Computacional
 
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
 
Que es complejidad computacional
Que es complejidad computacionalQue es complejidad computacional
Que es complejidad computacional
 
Analisis de Algoritmos
Analisis de AlgoritmosAnalisis de Algoritmos
Analisis de Algoritmos
 
Tema4
Tema4Tema4
Tema4
 
Tema 2 eficiencia y complejidad
Tema 2 eficiencia y complejidadTema 2 eficiencia y complejidad
Tema 2 eficiencia y complejidad
 
Teoría de complejidad computacional (tcc)
Teoría de complejidad computacional (tcc)Teoría de complejidad computacional (tcc)
Teoría de complejidad computacional (tcc)
 
Analisis de algoritmos
Analisis de algoritmosAnalisis de algoritmos
Analisis de algoritmos
 
Diapositiva
DiapositivaDiapositiva
Diapositiva
 
Complejidad de los algoritmos
Complejidad de los algoritmosComplejidad de los algoritmos
Complejidad de los algoritmos
 
Tema 2 eficiencia_y_complejidad_grupo_21
Tema 2 eficiencia_y_complejidad_grupo_21Tema 2 eficiencia_y_complejidad_grupo_21
Tema 2 eficiencia_y_complejidad_grupo_21
 
Complejidad
ComplejidadComplejidad
Complejidad
 
Algoritmos de ordeamiento
Algoritmos de ordeamientoAlgoritmos de ordeamiento
Algoritmos de ordeamiento
 
Jflambert lyada - ayudantia matematicas discretas
Jflambert   lyada - ayudantia matematicas discretasJflambert   lyada - ayudantia matematicas discretas
Jflambert lyada - ayudantia matematicas discretas
 
Complejidad
ComplejidadComplejidad
Complejidad
 
Análisis de complejidad big o
Análisis de complejidad  big o Análisis de complejidad  big o
Análisis de complejidad big o
 

Destacado

complejidad computacional
complejidad computacionalcomplejidad computacional
complejidad computacionallourdesnbv
 
Estructuras Algoritmicas: Ciclos o Bucles
Estructuras Algoritmicas: Ciclos o BuclesEstructuras Algoritmicas: Ciclos o Bucles
Estructuras Algoritmicas: Ciclos o BuclesLacoste
 
Complejidad algoritmos
Complejidad algoritmosComplejidad algoritmos
Complejidad algoritmosffarren
 
Domingo de pascua
Domingo de pascuaDomingo de pascua
Domingo de pascuaguest0071d9
 
La teoria de la complejidad
La teoria de la complejidadLa teoria de la complejidad
La teoria de la complejidadanmcg
 
Sistemas operativos y recursos que administran
Sistemas operativos y recursos que administranSistemas operativos y recursos que administran
Sistemas operativos y recursos que administranBrahian Perlaza
 
Analisis y disenio de algoritmos
Analisis y disenio de algoritmosAnalisis y disenio de algoritmos
Analisis y disenio de algoritmosMayte dena
 
TeoríA AlgoríTmica
TeoríA AlgoríTmicaTeoríA AlgoríTmica
TeoríA AlgoríTmicaCindhy Celi
 
composicion de algoritmos
 composicion de algoritmos composicion de algoritmos
composicion de algoritmosG Hoyos A
 
V Domingo de Pascua (Ciclo A) Reflexión
V Domingo de Pascua (Ciclo A) ReflexiónV Domingo de Pascua (Ciclo A) Reflexión
V Domingo de Pascua (Ciclo A) ReflexiónVíctor Hugo Salazar
 

Destacado (14)

complejidad computacional
complejidad computacionalcomplejidad computacional
complejidad computacional
 
Estructuras Algoritmicas: Ciclos o Bucles
Estructuras Algoritmicas: Ciclos o BuclesEstructuras Algoritmicas: Ciclos o Bucles
Estructuras Algoritmicas: Ciclos o Bucles
 
Complejidad algoritmos
Complejidad algoritmosComplejidad algoritmos
Complejidad algoritmos
 
Estructura algorítmicas
Estructura algorítmicasEstructura algorítmicas
Estructura algorítmicas
 
Domingo de pascua
Domingo de pascuaDomingo de pascua
Domingo de pascua
 
La teoria de la complejidad
La teoria de la complejidadLa teoria de la complejidad
La teoria de la complejidad
 
Sistemas operativos y recursos que administran
Sistemas operativos y recursos que administranSistemas operativos y recursos que administran
Sistemas operativos y recursos que administran
 
Analisis y disenio de algoritmos
Analisis y disenio de algoritmosAnalisis y disenio de algoritmos
Analisis y disenio de algoritmos
 
Complejidad de los Algoritmos
Complejidad de los AlgoritmosComplejidad de los Algoritmos
Complejidad de los Algoritmos
 
TeoríA AlgoríTmica
TeoríA AlgoríTmicaTeoríA AlgoríTmica
TeoríA AlgoríTmica
 
composicion de algoritmos
 composicion de algoritmos composicion de algoritmos
composicion de algoritmos
 
V Domingo de Pascua (Ciclo A) Reflexión
V Domingo de Pascua (Ciclo A) ReflexiónV Domingo de Pascua (Ciclo A) Reflexión
V Domingo de Pascua (Ciclo A) Reflexión
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
332 presentacion grafos
332 presentacion grafos332 presentacion grafos
332 presentacion grafos
 

Similar a Complejidad de Algoritmos

Similar a Complejidad de Algoritmos (20)

2 eficiencia
2 eficiencia2 eficiencia
2 eficiencia
 
Divide y Venceras
Divide y VencerasDivide y Venceras
Divide y Venceras
 
Analisis de algoritmos tarea 2
Analisis de algoritmos tarea 2Analisis de algoritmos tarea 2
Analisis de algoritmos tarea 2
 
Fundamentos Divide Y Venceras
Fundamentos Divide Y VencerasFundamentos Divide Y Venceras
Fundamentos Divide Y Venceras
 
Analisis de Algoritmos tarea 1
Analisis de Algoritmos tarea 1Analisis de Algoritmos tarea 1
Analisis de Algoritmos tarea 1
 
Mpinning Gy Alg9(Conteo)
Mpinning Gy Alg9(Conteo)Mpinning Gy Alg9(Conteo)
Mpinning Gy Alg9(Conteo)
 
Informe
InformeInforme
Informe
 
apuntes de java
apuntes de javaapuntes de java
apuntes de java
 
ANALISIS DE ALGORITMOS
ANALISIS DE ALGORITMOSANALISIS DE ALGORITMOS
ANALISIS DE ALGORITMOS
 
Recurrencias
RecurrenciasRecurrencias
Recurrencias
 
Aclase0802
Aclase0802Aclase0802
Aclase0802
 
Descomposición en Landscapes Elementales del Problema de Diseño de Redes de R...
Descomposición en Landscapes Elementales del Problema de Diseño de Redes de R...Descomposición en Landscapes Elementales del Problema de Diseño de Redes de R...
Descomposición en Landscapes Elementales del Problema de Diseño de Redes de R...
 
Metodos iterativos
Metodos iterativosMetodos iterativos
Metodos iterativos
 
Subirblog
SubirblogSubirblog
Subirblog
 
Subirblog2
Subirblog2Subirblog2
Subirblog2
 
Python
PythonPython
Python
 
Sistemas Difusos
Sistemas DifusosSistemas Difusos
Sistemas Difusos
 
Analisis Clase2
Analisis  Clase2Analisis  Clase2
Analisis Clase2
 
Ejercicios con respuestas. Calculo Integral Facultad de ingeniería.
Ejercicios con respuestas. Calculo Integral Facultad de ingeniería. Ejercicios con respuestas. Calculo Integral Facultad de ingeniería.
Ejercicios con respuestas. Calculo Integral Facultad de ingeniería.
 
Cap4
Cap4Cap4
Cap4
 

Último

Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.DaluiMonasterio
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docxAleParedes11
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptELENA GALLARDO PAÚLS
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuaDANNYISAACCARVAJALGA
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 

Último (20)

Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahua
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 

Complejidad de Algoritmos

  • 2. Análisis de Algoritmos Qué es Complejidad?. Ordenes de Complejidad. Complejidad de instrucciones básicas. Algunos problemas clásicos.
  • 3. Complejidad ¿Qué entiende Ud. por complejidad? ¿Cómo se mide la complejidad? ¿La complejidad está asociada a un problema o a una solución del problema? ¿La complejidad depende de la implementación?
  • 4. Complejidad ¿Qué se entiende por complejidad? La Complejidad es una medida de laLa Complejidad es una medida de la cantidad que consume un algoritmo de uncantidad que consume un algoritmo de un recurso determinado.recurso determinado.
  • 5. Complejidad Problema: Pregunta sobre un conjunto dePregunta sobre un conjunto de datos.datos. Solución:Solución: Método general para resolverMétodo general para resolver todas las posibles preguntas.todas las posibles preguntas.
  • 6. Complejidad Problema: XX = { (p(x),r(x)) | x= { (p(x),r(x)) | x ∈∈ D }.D }. Solución:Solución: Es una relación A: PEs una relación A: P  R talR tal que para cada preguntaque para cada pregunta posible p, (p,A(p))posible p, (p,A(p)) ∈∈ XX.. Para un problemaPara un problema XX existen preguntas másexisten preguntas más difíciles de resolver o más grandes que otras.difíciles de resolver o más grandes que otras.
  • 7. Complejidad Problema: XX = { ((a,k),i) | a=A[0..n-1]= { ((a,k),i) | a=A[0..n-1] ∧∧ 00 ≤ i ≤ n-1≤ i ≤ n-1 ∧∧ a[i] = ka[i] = k}.}. Solución:Solución: Algoritmo de Búsqueda Lineal.Algoritmo de Búsqueda Lineal. BL responde preguntas fáciles y preguntasBL responde preguntas fáciles y preguntas difícilesdifíciles (¿de que depende la dificultad?).(¿de que depende la dificultad?).
  • 8. Complejidad Si el recurso es espacio:Si el recurso es espacio: Cantidad de memoria requeridaCantidad de memoria requerida para una ejecución.para una ejecución. Si el recurso es tiempo:Si el recurso es tiempo: Cantidad de tiempo requeridoCantidad de tiempo requerido para una ejecución.para una ejecución. n + 2n + 2.. depende!depende!
  • 9. Complejidad Búsqueda en un arregloBúsqueda en un arreglo:: {Pre Q: a=A[0..n-1]{Pre Q: a=A[0..n-1] ∧∧ x=X}x=X} i:=0;i:=0; dodo (i(i ≠ n≠ n ∧∧ a[i]≠x)a[i]≠x)  i:=i+1i:=i+1 odod {Pos R: (i=n{Pos R: (i=n ∧∧ XX∉∉A)A) ∨∨ (0≤i<n(0≤i<n ∧∧ A[i]=X)}A[i]=X)} Operación básica: Comparación.Operación básica: Comparación. Si X está en la posición k: k +1 comparaciones.Si X está en la posición k: k +1 comparaciones. Si X no está en A: n comparaciones.Si X no está en A: n comparaciones.
  • 10. Complejidad Búsqueda en un arregloBúsqueda en un arreglo:: TTBLIBLI (n) = n(n) = n en el peor caso.en el peor caso. TTBLIBLI (n) = n – a(n-1)/2(n) = n – a(n-1)/2 en el caso promedio.en el caso promedio.
  • 11. Complejidad Búsqueda en un arregloBúsqueda en un arreglo:: TTBLIBLI (n) = n – a(n-1)/2(n) = n – a(n-1)/2 en el caso promedio.en el caso promedio. TTBLIBLI (n) = (+ k | 0(n) = (+ k | 0≤k≤≤k≤n : qn : qnn(k) T(k) TBLIBLI(k))(k)) = (+ k | 0= (+ k | 0≤k<≤k<n : qn : qnn(k) T(k) TBLIBLI(k))+q(k))+qnn(n)T(n)TBLIBLI(n)(n) = (+ k | 0= (+ k | 0≤k<≤k<n : (a/n) Tn : (a/n) TBLIBLI(k))+(1-a)n(k))+(1-a)n = (+ k | 0= (+ k | 0≤k<≤k<n : (a/n) (k+1))+(1-a)nn : (a/n) (k+1))+(1-a)n = n – a(n-1)/2= n – a(n-1)/2
  • 12. Complejidad Búsqueda en un arregloBúsqueda en un arreglo:: TTBLIBLI (n) = n – a(n-1)/2(n) = n – a(n-1)/2 en el caso promedio.en el caso promedio. Casos interesantes:Casos interesantes: XX ∈∈ AA ⇒⇒ a = 1 : Ta = 1 : TBLIBLI (n) = (n+1)/2(n) = (n+1)/2 a = ½ : Ta = ½ : TBLIBLI (n)(n) ≈≈ 3n/43n/4 XX ∉∉ AA ⇒⇒ a = 0 : Ta = 0 : T (n) = n(n) = n
  • 13. Análisis de Algoritmos Qué es Complejidad?. Ordenes de Complejidad. Complejidad de instrucciones básicas. Un problema clásico.
  • 14. Ordenes de Complejidad Algoritmo 1 : T1(n) = 1000 n Algoritmo 2 : T2(n) = 200 n log n Algoritmo 3 : T3(n) = 10 n2 Algoritmo 4 : T4(n) = 2n 1 9 100 2 4 3 1
  • 15. Ordenes de Complejidad Establecer la complejidad precisa es difícil…. …entonces se estudia el comportamiento asintótico.
  • 16. Ordenes de Complejidad A. Existen constantes C y D tales que para todo N el algoritmo ejecuta en tiempo menor que CN2.5 + D. B. Para todo N pueden existir entradas que ejecutan en tiempo menor a N2.5 C. Para todo N pueden existir entradas que ejecutan en tiempo menor a N2.6 D. Para todo N pueden existir entradas que ejecutan en tiempo mayor a N2.4 E. Para todo N pueden existir entradas que ejecutan en tiempo mayor a N2.6 Cierto algoritmo se ejecuta en tiempo O(n2.5 ), donde n es el tamaño de la entrada. Cuál de las afirmaciones NO es verdad?
  • 17. Ordenes de Complejidad n T k De k en adelante un múltiplo de f supera a g g es O(f)
  • 18. Ordenes de Complejidad De k en adelante un múltiplo de f supera a g 3 = O(n) 3n = O(n) 3n = O(n2 ) n = O(n log n) log n = O(n) n7 = O(2n ) g = O(f)
  • 19. Ordenes de Complejidad n T k De k en adelante un múltiplo de f es inferior a g g es Ω(f)
  • 20. Ordenes de Complejidad n T k De k en adelante un múltiplo de f es superior a g y otro múltiplo de f es inferior a g. g es Θ(f)
  • 21. Análisis de Algoritmos Qué es Complejidad?. Ordenes de Complejidad. Complejidad de instrucciones básicas. Un problema clásico.
  • 22. Complejidad de Instrucciones Básicas T(skip) = 0 T(abort) = 0 T(x := e) = O(T(e)) T(S1; S2) = O(T(S1)) + O(T(S2)) = O(max(T(S1),T(S2))) T(IF) = O(max(T(Bk)) + max(T(Sk))) T(DO) = O(t * (max(T(Bk)) + max(T(Sk))))
  • 23. Complejidad de Instrucciones Básicas for (i = 0, n – 2, i = i + 1) { for (j = n -1, i + 1, j = j -1) { if a[j-1] > a[j] then { temp = a[j]; a[j] = a[j-1]; a[j-1] = temp; } else skip fi rof rof O(1) O(1) O(n-1-i) O(n2 )