SlideShare una empresa de Scribd logo
1 de 20
Descargar para leer sin conexión
Análisis de Algoritmos
pilarpardohidalgo@gmail.com
La complejidad de un algoritmo se expresa en función del
tamaño del problemaque se desea resolver.
La complejidad de un algoritmo
es una medidade la cantidad de
recursos(tiempo y espacio)
que un algoritmonecesita.
pilarpardohidalgo@gmail.com
La complejidad es la cantidad
de memoria requerida para su ejecución.
Si el recurso es ESPACIO
pilarpardohidalgo@gmail.com
La complejidad se asocia a la cantidad de tiempo que necesita el
algoritmo para la ejecución de operaciones.
Si el recurso es TIEMPO
pilarpardohidalgo@gmail.com
La complejidad del algoritmo está asociada a las estructuras de datos usadas su implementación
Si el recurso es ESPACIO
Internas
Externas
Estructura
de Datos
- Vectores
- MatrizEstáticas
Dinámicas
Bases de
Datos
Archivos
Lineales
No Lineales
- Pilas
- Listas
- Colas
- Árboles
- Grafos
pilarpardohidalgo@gmail.com
Cada algoritmo se comporta de modo diferente de acuerdo a
cómo se le entregue la información (variables de entrada)
pilarpardohidalgo@gmail.com
Por eso es conveniente estudiar
su comportamiento en casos extremos.
[Datos muy ordenados o muy desordenados]
pilarpardohidalgo@gmail.com
Este análisis indica cuántas operaciones tienen que realizar los
algoritmos para GARANTIZAR que producirán una SOLUCION.
Complejidad del Peor Caso
Se busca el promedio de operaciones
realizadas para solucionar un problema considerando todas las
posibles entradas con un tamaño determinado.
Complejidad del Caso Promedio
pilarpardohidalgo@gmail.com
El interés principal del análisis de algoritmos radica en saber cómo
crece el
Tiempo de Ejecución
cuando el tamaño de la entrada crece , la función para medir esa
complejidad se denota como T(n).
Esta función se puede medir físicamente ejecutando
el programa, calcularse sobre el código contando
instrucciones a ejecutar y multiplicando por el
tiempo requerido por cada instrucción
pilarpardohidalgo@gmail.com
Necesitamos analizar la potenciade los algoritmos
independientemente de la potencia de la máquina que los ejecute
e incluso de la habilidad del programador que los codifique.
Casi siempre los problemas pequeños se pueden resolver de
cualquier forma.
Nos interesa entonces el análisis especialmente cuando el
algoritmo se aplica a grandes problemas.
Las consideraciones anteriores nos llevan a estudiar el
comportamiento de un algoritmo cuando se fuerza el tamaño del
problema al que se aplica.
Matemáticamente hablando es cuando
N tiende a Infinito
Es decir, su Comportamiento
Asintótico.
pilarpardohidalgo@gmail.com
Se denomina “asintótica” porque analiza el comportamiento de las
funciones en base a su tasa de crecimiento.
La notación asintótica se describe por medio de una función cuyo
dominio es los números naturales N , estimado a partir de tiempo de
ejecución o de espacio de memoria de algoritmos en base a la
longitud de la entrada. La complejidad del algoritmo se denota según
la notación Big-O.
Se consideran las funciones asintóticamente no negativas.
Lo que vamos a intentar es identificar "familias"
de funciones, usando como criterio de agrupación su
comportamiento asintótico.
A un conjunto de funciones que comparten un mismo
comportamiento asintótico le denominaremos un
orden de complejidad.
Habitualmente estos conjuntos se denominan O
existiendo una infinidad de ellos.
Complejidad Terminología
O(1) Complejidad constante
O(n2) Complejidad cuadrática
O(log n) Complejidad logarítmica
O(n) Complejidad lineal
O(n log n) Complejidad casi-lineal
O(n^b) Complejidad polinómica
O(b^n) Complejidad exponencial
O(n!) Complejidad factorial
Talla = Tamaño del problema

Más contenido relacionado

La actualidad más candente

Introduction to Machine Learning
Introduction to Machine LearningIntroduction to Machine Learning
Introduction to Machine Learningshivani saluja
 
Knn Algorithm presentation
Knn Algorithm presentationKnn Algorithm presentation
Knn Algorithm presentationRishavSharma112
 
Unsupervised learning (clustering)
Unsupervised learning (clustering)Unsupervised learning (clustering)
Unsupervised learning (clustering)Pravinkumar Landge
 
Machine Learning Classifiers
Machine Learning ClassifiersMachine Learning Classifiers
Machine Learning ClassifiersMostafa
 
Genetic algorithm for hyperparameter tuning
Genetic algorithm for hyperparameter tuningGenetic algorithm for hyperparameter tuning
Genetic algorithm for hyperparameter tuningDr. Jyoti Obia
 
How to Win Machine Learning Competitions ?
How to Win Machine Learning Competitions ? How to Win Machine Learning Competitions ?
How to Win Machine Learning Competitions ? HackerEarth
 
Machine Learning with Decision trees
Machine Learning with Decision treesMachine Learning with Decision trees
Machine Learning with Decision treesKnoldus Inc.
 
Deep learning with tensorflow
Deep learning with tensorflowDeep learning with tensorflow
Deep learning with tensorflowCharmi Chokshi
 
Hadoop Mapreduce Job Execution By Ravi Namboori Babson
Hadoop Mapreduce Job Execution By Ravi Namboori BabsonHadoop Mapreduce Job Execution By Ravi Namboori Babson
Hadoop Mapreduce Job Execution By Ravi Namboori BabsonRavi namboori
 
Decision trees in Machine Learning
Decision trees in Machine Learning Decision trees in Machine Learning
Decision trees in Machine Learning Mohammad Junaid Khan
 
Cure, Clustering Algorithm
Cure, Clustering AlgorithmCure, Clustering Algorithm
Cure, Clustering AlgorithmLino Possamai
 
Solving problems by searching
Solving problems by searchingSolving problems by searching
Solving problems by searchingLuigi Ceccaroni
 
Uninformed Search technique
Uninformed Search techniqueUninformed Search technique
Uninformed Search techniqueKapil Dahal
 
Deep learning for biomedical discovery and data mining I
Deep learning for biomedical discovery and data mining IDeep learning for biomedical discovery and data mining I
Deep learning for biomedical discovery and data mining IDeakin University
 
Informed and Uninformed search Strategies
Informed and Uninformed search StrategiesInformed and Uninformed search Strategies
Informed and Uninformed search StrategiesAmey Kerkar
 
Fundamentals of the Analysis of Algorithm Efficiency
Fundamentals of the Analysis of Algorithm EfficiencyFundamentals of the Analysis of Algorithm Efficiency
Fundamentals of the Analysis of Algorithm EfficiencySaranya Natarajan
 

La actualidad más candente (20)

Introduction to Machine Learning
Introduction to Machine LearningIntroduction to Machine Learning
Introduction to Machine Learning
 
chapter 1
chapter 1chapter 1
chapter 1
 
Knn Algorithm presentation
Knn Algorithm presentationKnn Algorithm presentation
Knn Algorithm presentation
 
Unsupervised learning (clustering)
Unsupervised learning (clustering)Unsupervised learning (clustering)
Unsupervised learning (clustering)
 
Machine Learning Classifiers
Machine Learning ClassifiersMachine Learning Classifiers
Machine Learning Classifiers
 
Genetic algorithm for hyperparameter tuning
Genetic algorithm for hyperparameter tuningGenetic algorithm for hyperparameter tuning
Genetic algorithm for hyperparameter tuning
 
Algorithm Design
Algorithm DesignAlgorithm Design
Algorithm Design
 
How to Win Machine Learning Competitions ?
How to Win Machine Learning Competitions ? How to Win Machine Learning Competitions ?
How to Win Machine Learning Competitions ?
 
Machine Learning with Decision trees
Machine Learning with Decision treesMachine Learning with Decision trees
Machine Learning with Decision trees
 
Deep learning with tensorflow
Deep learning with tensorflowDeep learning with tensorflow
Deep learning with tensorflow
 
Hadoop Mapreduce Job Execution By Ravi Namboori Babson
Hadoop Mapreduce Job Execution By Ravi Namboori BabsonHadoop Mapreduce Job Execution By Ravi Namboori Babson
Hadoop Mapreduce Job Execution By Ravi Namboori Babson
 
Uninformed search
Uninformed searchUninformed search
Uninformed search
 
KNN
KNNKNN
KNN
 
Decision trees in Machine Learning
Decision trees in Machine Learning Decision trees in Machine Learning
Decision trees in Machine Learning
 
Cure, Clustering Algorithm
Cure, Clustering AlgorithmCure, Clustering Algorithm
Cure, Clustering Algorithm
 
Solving problems by searching
Solving problems by searchingSolving problems by searching
Solving problems by searching
 
Uninformed Search technique
Uninformed Search techniqueUninformed Search technique
Uninformed Search technique
 
Deep learning for biomedical discovery and data mining I
Deep learning for biomedical discovery and data mining IDeep learning for biomedical discovery and data mining I
Deep learning for biomedical discovery and data mining I
 
Informed and Uninformed search Strategies
Informed and Uninformed search StrategiesInformed and Uninformed search Strategies
Informed and Uninformed search Strategies
 
Fundamentals of the Analysis of Algorithm Efficiency
Fundamentals of the Analysis of Algorithm EfficiencyFundamentals of the Analysis of Algorithm Efficiency
Fundamentals of the Analysis of Algorithm Efficiency
 

Destacado

composicion de algoritmos
 composicion de algoritmos composicion de algoritmos
composicion de algoritmosG Hoyos A
 
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
 
Analisis y disenio de algoritmos
Analisis y disenio de algoritmosAnalisis y disenio de algoritmos
Analisis y disenio de algoritmosMayte dena
 
Sistemas operativos y recursos que administran
Sistemas operativos y recursos que administranSistemas operativos y recursos que administran
Sistemas operativos y recursos que administranBrahian Perlaza
 
La teoria de la complejidad
La teoria de la complejidadLa teoria de la complejidad
La teoria de la complejidadanmcg
 
TeoríA AlgoríTmica
TeoríA AlgoríTmicaTeoríA AlgoríTmica
TeoríA AlgoríTmicaCindhy Celi
 
complejidad computacional
complejidad computacionalcomplejidad computacional
complejidad computacionallourdesnbv
 
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
 
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
 
U1 Analisis Algoritmos Complejidad
U1 Analisis Algoritmos ComplejidadU1 Analisis Algoritmos Complejidad
U1 Analisis Algoritmos Complejidadrezzaca
 

Destacado (17)

composicion de algoritmos
 composicion de algoritmos composicion de algoritmos
composicion de algoritmos
 
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
 
Complejidad de Algoritmos
Complejidad de AlgoritmosComplejidad de Algoritmos
Complejidad de Algoritmos
 
Analisis y disenio de algoritmos
Analisis y disenio de algoritmosAnalisis y disenio de algoritmos
Analisis y disenio de algoritmos
 
Sistemas operativos y recursos que administran
Sistemas operativos y recursos que administranSistemas operativos y recursos que administran
Sistemas operativos y recursos que administran
 
La teoria de la complejidad
La teoria de la complejidadLa teoria de la complejidad
La teoria de la complejidad
 
TeoríA AlgoríTmica
TeoríA AlgoríTmicaTeoríA AlgoríTmica
TeoríA AlgoríTmica
 
complejidad computacional
complejidad computacionalcomplejidad computacional
complejidad computacional
 
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
 
AnáLisis De Algoritmos1
AnáLisis De Algoritmos1AnáLisis De Algoritmos1
AnáLisis De Algoritmos1
 
Teoría de complejidad computacional (tcc)
Teoría de complejidad computacional (tcc)Teoría de complejidad computacional (tcc)
Teoría de complejidad computacional (tcc)
 
332 presentacion grafos
332 presentacion grafos332 presentacion grafos
332 presentacion grafos
 
U1 Analisis Algoritmos Complejidad
U1 Analisis Algoritmos ComplejidadU1 Analisis Algoritmos Complejidad
U1 Analisis Algoritmos Complejidad
 

Similar a Complejidad de los Algoritmos

La complejidad en los algoritmos
La complejidad en los algoritmosLa complejidad en los algoritmos
La complejidad en los algoritmosAndrés Ibarra
 
Complejidad de algoritmos
Complejidad de algoritmosComplejidad de algoritmos
Complejidad de algoritmosSid_Dharkoz
 
Complejidad de algoritmos
Complejidad de algoritmosComplejidad de algoritmos
Complejidad de algoritmospazmoralesv
 
Complejidad Computacional
Complejidad ComputacionalComplejidad Computacional
Complejidad Computacionalrvargass
 
Complejidad Computacional
Complejidad ComputacionalComplejidad Computacional
Complejidad Computacionalrvargass
 
Complejidad de un algoritmo
Complejidad de un algoritmoComplejidad de un algoritmo
Complejidad de un algoritmoLutzo Guzmán
 
Complejidad de los algoritmos
Complejidad de los algoritmosComplejidad de los algoritmos
Complejidad de los algoritmosjuanveg31
 
Clasificacion de los problemas (1)
Clasificacion de los problemas (1)Clasificacion de los problemas (1)
Clasificacion de los problemas (1)Patricia Correa
 
Nuevo presentación de microsoft power point
Nuevo presentación de microsoft power pointNuevo presentación de microsoft power point
Nuevo presentación de microsoft power pointMichael Hinojosa
 
Nuevo presentación de microsoft power point
Nuevo presentación de microsoft power pointNuevo presentación de microsoft power point
Nuevo presentación de microsoft power pointMichael Hinojosa
 

Similar a Complejidad de los Algoritmos (20)

Análisis de algoritmo 1
Análisis de algoritmo 1Análisis de algoritmo 1
Análisis de algoritmo 1
 
La complejidad en los algoritmos
La complejidad en los algoritmosLa complejidad en los algoritmos
La complejidad en los algoritmos
 
Complejidad de Algoritmos
Complejidad de AlgoritmosComplejidad de Algoritmos
Complejidad de Algoritmos
 
Complejidad de algoritmos
Complejidad de algoritmosComplejidad de algoritmos
Complejidad de algoritmos
 
Complejidad de algoritmos
Complejidad de algoritmosComplejidad de algoritmos
Complejidad de algoritmos
 
Complejidad Computacional
Complejidad ComputacionalComplejidad Computacional
Complejidad Computacional
 
Complejidad Computacional
Complejidad ComputacionalComplejidad Computacional
Complejidad Computacional
 
Complejidad de los algoritmos
Complejidad de los algoritmosComplejidad de los algoritmos
Complejidad de los algoritmos
 
Complejidad de un algoritmo
Complejidad de un algoritmoComplejidad de un algoritmo
Complejidad de un algoritmo
 
Analisis de algoritmo
Analisis de algoritmoAnalisis de algoritmo
Analisis de algoritmo
 
Complejidad de los algoritmos
Complejidad de los algoritmosComplejidad de los algoritmos
Complejidad de los algoritmos
 
AnáLisis De Algoritmos1
AnáLisis De Algoritmos1AnáLisis De Algoritmos1
AnáLisis De Algoritmos1
 
Clasificacion de los problemas (1)
Clasificacion de los problemas (1)Clasificacion de los problemas (1)
Clasificacion de los problemas (1)
 
Nuevo presentación de microsoft power point
Nuevo presentación de microsoft power pointNuevo presentación de microsoft power point
Nuevo presentación de microsoft power point
 
Unidad 7
Unidad 7Unidad 7
Unidad 7
 
Complejidad de-los-algoritmos
Complejidad de-los-algoritmosComplejidad de-los-algoritmos
Complejidad de-los-algoritmos
 
Nuevo presentación de microsoft power point
Nuevo presentación de microsoft power pointNuevo presentación de microsoft power point
Nuevo presentación de microsoft power point
 
Unidad 7
Unidad 7Unidad 7
Unidad 7
 
Unidad 7
Unidad 7Unidad 7
Unidad 7
 
Unidad 7
Unidad 7Unidad 7
Unidad 7
 

Más de Pilar Pardo Hidalgo

Género y emprendimientos femeninos
Género y emprendimientos femeninosGénero y emprendimientos femeninos
Género y emprendimientos femeninosPilar Pardo Hidalgo
 
Ingeniería y gestión de requerimientos
Ingeniería y gestión de requerimientosIngeniería y gestión de requerimientos
Ingeniería y gestión de requerimientosPilar Pardo Hidalgo
 
Factibilidades para el Desarrollo de SW
Factibilidades para el Desarrollo de SWFactibilidades para el Desarrollo de SW
Factibilidades para el Desarrollo de SWPilar Pardo Hidalgo
 
Factibilidad Ambiental de un proyecto de SW
Factibilidad Ambiental de un proyecto de SWFactibilidad Ambiental de un proyecto de SW
Factibilidad Ambiental de un proyecto de SWPilar Pardo Hidalgo
 
Principios basicos base de datos
Principios basicos   base de datosPrincipios basicos   base de datos
Principios basicos base de datosPilar Pardo Hidalgo
 
Técnicas de recopilación de información
Técnicas de recopilación de informaciónTécnicas de recopilación de información
Técnicas de recopilación de informaciónPilar Pardo Hidalgo
 
Diseño de Interfaz de usuario y experiencia de usuario UI
Diseño de Interfaz de usuario y experiencia de usuario UIDiseño de Interfaz de usuario y experiencia de usuario UI
Diseño de Interfaz de usuario y experiencia de usuario UIPilar Pardo Hidalgo
 
¿Cómo crear ciudades mas integradas socialmente utilizando trenes urbanos?
¿Cómo crear ciudades mas integradas socialmente utilizando trenes urbanos?¿Cómo crear ciudades mas integradas socialmente utilizando trenes urbanos?
¿Cómo crear ciudades mas integradas socialmente utilizando trenes urbanos?Pilar Pardo Hidalgo
 
Turismo Inteligente - Design Thinking
Turismo Inteligente - Design ThinkingTurismo Inteligente - Design Thinking
Turismo Inteligente - Design ThinkingPilar Pardo Hidalgo
 
Clase 1 Taller de intraestructura TI
Clase 1   Taller de intraestructura TIClase 1   Taller de intraestructura TI
Clase 1 Taller de intraestructura TIPilar Pardo Hidalgo
 
Junta de Vecinos Lomas de San Sebastián Concepción
Junta de Vecinos Lomas de San Sebastián ConcepciónJunta de Vecinos Lomas de San Sebastián Concepción
Junta de Vecinos Lomas de San Sebastián ConcepciónPilar Pardo Hidalgo
 

Más de Pilar Pardo Hidalgo (20)

Género y emprendimientos femeninos
Género y emprendimientos femeninosGénero y emprendimientos femeninos
Género y emprendimientos femeninos
 
Ingeniería y gestión de requerimientos
Ingeniería y gestión de requerimientosIngeniería y gestión de requerimientos
Ingeniería y gestión de requerimientos
 
Factibilidades para el Desarrollo de SW
Factibilidades para el Desarrollo de SWFactibilidades para el Desarrollo de SW
Factibilidades para el Desarrollo de SW
 
EDT
EDTEDT
EDT
 
PMBOK
PMBOK PMBOK
PMBOK
 
PMI Y PMBOK
PMI Y PMBOKPMI Y PMBOK
PMI Y PMBOK
 
Metodología Ágil
Metodología ÁgilMetodología Ágil
Metodología Ágil
 
Gestion de proyectos de SW
Gestion de proyectos de SWGestion de proyectos de SW
Gestion de proyectos de SW
 
Ejemplo de Proyecto de Software
Ejemplo de Proyecto de SoftwareEjemplo de Proyecto de Software
Ejemplo de Proyecto de Software
 
Factibilidad Ambiental de un proyecto de SW
Factibilidad Ambiental de un proyecto de SWFactibilidad Ambiental de un proyecto de SW
Factibilidad Ambiental de un proyecto de SW
 
Principios basicos base de datos
Principios basicos   base de datosPrincipios basicos   base de datos
Principios basicos base de datos
 
Técnicas de recopilación de información
Técnicas de recopilación de informaciónTécnicas de recopilación de información
Técnicas de recopilación de información
 
Uso eficiente de redes sociales
Uso eficiente de redes socialesUso eficiente de redes sociales
Uso eficiente de redes sociales
 
Diseño de Interfaz de usuario y experiencia de usuario UI
Diseño de Interfaz de usuario y experiencia de usuario UIDiseño de Interfaz de usuario y experiencia de usuario UI
Diseño de Interfaz de usuario y experiencia de usuario UI
 
¿Cómo crear ciudades mas integradas socialmente utilizando trenes urbanos?
¿Cómo crear ciudades mas integradas socialmente utilizando trenes urbanos?¿Cómo crear ciudades mas integradas socialmente utilizando trenes urbanos?
¿Cómo crear ciudades mas integradas socialmente utilizando trenes urbanos?
 
Herramientas de Innovacion
Herramientas de InnovacionHerramientas de Innovacion
Herramientas de Innovacion
 
MODELO DE NEGOCIO CANVAS
MODELO DE NEGOCIO CANVASMODELO DE NEGOCIO CANVAS
MODELO DE NEGOCIO CANVAS
 
Turismo Inteligente - Design Thinking
Turismo Inteligente - Design ThinkingTurismo Inteligente - Design Thinking
Turismo Inteligente - Design Thinking
 
Clase 1 Taller de intraestructura TI
Clase 1   Taller de intraestructura TIClase 1   Taller de intraestructura TI
Clase 1 Taller de intraestructura TI
 
Junta de Vecinos Lomas de San Sebastián Concepción
Junta de Vecinos Lomas de San Sebastián ConcepciónJunta de Vecinos Lomas de San Sebastián Concepción
Junta de Vecinos Lomas de San Sebastián Concepción
 

Complejidad de los Algoritmos

  • 3. La complejidad de un algoritmo se expresa en función del tamaño del problemaque se desea resolver.
  • 4. La complejidad de un algoritmo es una medidade la cantidad de recursos(tiempo y espacio) que un algoritmonecesita. pilarpardohidalgo@gmail.com
  • 5. La complejidad es la cantidad de memoria requerida para su ejecución. Si el recurso es ESPACIO pilarpardohidalgo@gmail.com
  • 6. La complejidad se asocia a la cantidad de tiempo que necesita el algoritmo para la ejecución de operaciones. Si el recurso es TIEMPO pilarpardohidalgo@gmail.com
  • 7. La complejidad del algoritmo está asociada a las estructuras de datos usadas su implementación Si el recurso es ESPACIO Internas Externas Estructura de Datos - Vectores - MatrizEstáticas Dinámicas Bases de Datos Archivos Lineales No Lineales - Pilas - Listas - Colas - Árboles - Grafos pilarpardohidalgo@gmail.com
  • 8. Cada algoritmo se comporta de modo diferente de acuerdo a cómo se le entregue la información (variables de entrada) pilarpardohidalgo@gmail.com
  • 9. Por eso es conveniente estudiar su comportamiento en casos extremos. [Datos muy ordenados o muy desordenados] pilarpardohidalgo@gmail.com
  • 10. Este análisis indica cuántas operaciones tienen que realizar los algoritmos para GARANTIZAR que producirán una SOLUCION. Complejidad del Peor Caso
  • 11. Se busca el promedio de operaciones realizadas para solucionar un problema considerando todas las posibles entradas con un tamaño determinado. Complejidad del Caso Promedio pilarpardohidalgo@gmail.com
  • 12. El interés principal del análisis de algoritmos radica en saber cómo crece el Tiempo de Ejecución cuando el tamaño de la entrada crece , la función para medir esa complejidad se denota como T(n). Esta función se puede medir físicamente ejecutando el programa, calcularse sobre el código contando instrucciones a ejecutar y multiplicando por el tiempo requerido por cada instrucción
  • 14. Necesitamos analizar la potenciade los algoritmos independientemente de la potencia de la máquina que los ejecute e incluso de la habilidad del programador que los codifique.
  • 15. Casi siempre los problemas pequeños se pueden resolver de cualquier forma. Nos interesa entonces el análisis especialmente cuando el algoritmo se aplica a grandes problemas.
  • 16. Las consideraciones anteriores nos llevan a estudiar el comportamiento de un algoritmo cuando se fuerza el tamaño del problema al que se aplica. Matemáticamente hablando es cuando N tiende a Infinito Es decir, su Comportamiento Asintótico. pilarpardohidalgo@gmail.com
  • 17. Se denomina “asintótica” porque analiza el comportamiento de las funciones en base a su tasa de crecimiento. La notación asintótica se describe por medio de una función cuyo dominio es los números naturales N , estimado a partir de tiempo de ejecución o de espacio de memoria de algoritmos en base a la longitud de la entrada. La complejidad del algoritmo se denota según la notación Big-O. Se consideran las funciones asintóticamente no negativas.
  • 18. Lo que vamos a intentar es identificar "familias" de funciones, usando como criterio de agrupación su comportamiento asintótico. A un conjunto de funciones que comparten un mismo comportamiento asintótico le denominaremos un orden de complejidad. Habitualmente estos conjuntos se denominan O existiendo una infinidad de ellos.
  • 19. Complejidad Terminología O(1) Complejidad constante O(n2) Complejidad cuadrática O(log n) Complejidad logarítmica O(n) Complejidad lineal O(n log n) Complejidad casi-lineal O(n^b) Complejidad polinómica O(b^n) Complejidad exponencial O(n!) Complejidad factorial
  • 20. Talla = Tamaño del problema