SlideShare una empresa de Scribd logo
Complejidad de un algoritmo.
Análisis de algoritmos.
Autor: Luis Guzmán.
Docente: Pilar Pardo.
26 – Marzo – 2014.
¿Qué es la complejidad
de un algoritmo?
La complejidad de un algoritmo es una métrica que se expresa según el tamaño
del problema, en donde se mide la cantidad de recursos (tiempo – espacio)
que el algoritmo necesite.
En donde si el recurso a considerar es el espacio la complejidad se basa en la cantidad de memoria
requerida para ejecutar, la cual está asociada a las estructuras de datos usadas en su implementación.
Complejidad de un algoritmo
La complejidad se basa en la cantidad de tiempo necesario para la ejecución de
operaciones.
Mientras que si el Recurso es tiempo
La resolución de un problema puede obtenerse con muchos
algoritmos. Por tanto, es obvio querer elegir el “mejor”.
Si el problema es sencillo puede elegir el más “fácil”.
Si el problema es complejo o existen muchas soluciones se
tiene que elegir el algoritmo que menos recursos utilice
(tiempo – espacio).
La eficiencia de un algoritmo (lo rápido que se ejecutará)
dependerá del “tamaño” de los datos de entrada.
El peor de los casos indica el mayor tiempo obtenido,
considerando todas las entradas posibles.
El caso promedio indica el tiempo medio obtenido,
considerando todas las entradas posibles.
El mejor de los casos indica el menor tiempo obtenido,
considerando todas las entradas posibles.
Si los datos de entrada son grandes el tiempo de
ejecución será mayor.
Expresado como T(n).
Tiempo de ejecución.
Complejidad de un algoritmo
Lo más importante del análisis
de algoritmo es saber cómo
crece el tiempo de ejecución
cuando el tamaño de entrada
crece.
A esto se le denomina eficiencia
asintótica del algoritmo, donde se indica
como crece "t" para los valores que
tienden al infinito, es decir con
comportamiento asintótico.
"Asintótico es analizar el comportamiento de las funciones en base a su tasa de
crecimiento." Para esto se creó la notación Big-0 donde 0 es un valor que puede
tender al infinito.
Existe un conjunto de funciones que poseen un mismo comportamiento, a esto se le
denomina orden de complejidad, el cual está representado por la siguiente tabla
Complejidad Orden
O(1) Constante
0(n2) Cuadrática
0(log n) Logarítmica
0(n) Lineal
0(n log n) Casi-Lineal
0(nb) Polinómica
0(bn) Exponencial
0(n!) Factorial
Complejidad de un algoritmo

Más contenido relacionado

PPT
Covering (Rules-based) Algorithm
PPT
Parallel computing chapter 3
PPTX
PDF
Support Vector Machines for Classification
PDF
PPT
Apriori algorithm
PPT
Neural Networks in Data Mining - “An Overview”
PPTX
Decision Trees
Covering (Rules-based) Algorithm
Parallel computing chapter 3
Support Vector Machines for Classification
Apriori algorithm
Neural Networks in Data Mining - “An Overview”
Decision Trees

La actualidad más candente (20)

PPTX
Yzm 2116 Bölüm 1 - Veri Yapılarına Giriş
PPTX
hill climbing.pptx
DOCX
Determinantes
PPTX
PPTX
Modelo supervisado knn
PPTX
Artificial neural networks (2)
PDF
Boruta
 
PPTX
Protection Domain and Access Matrix Model -Operating System
PPTX
K-Folds Cross Validation Method
PDF
Design and analysis of algorithms
PPTX
Ensemble learning
PPT
Data Base Management System
PDF
Logic programming (1)
PPTX
Extreme learning machine:Theory and applications
PPT
MACHINE LEARNING LIFE CYCLE
PPTX
YZM 2116 - Bölüm 3 - Listeler
DOC
Comparison of Machine Learning Algorithms
PPT
Data structures & problem solving unit 1 ppt
PPTX
Chapter 09 design and analysis of algorithms
PDF
Understanding random forests
Yzm 2116 Bölüm 1 - Veri Yapılarına Giriş
hill climbing.pptx
Determinantes
Modelo supervisado knn
Artificial neural networks (2)
Boruta
 
Protection Domain and Access Matrix Model -Operating System
K-Folds Cross Validation Method
Design and analysis of algorithms
Ensemble learning
Data Base Management System
Logic programming (1)
Extreme learning machine:Theory and applications
MACHINE LEARNING LIFE CYCLE
YZM 2116 - Bölüm 3 - Listeler
Comparison of Machine Learning Algorithms
Data structures & problem solving unit 1 ppt
Chapter 09 design and analysis of algorithms
Understanding random forests
Publicidad

Destacado (20)

PPTX
Algoritmos complejidad-1
PPT
Analisis de Algoritmos
PPTX
Análisis de algoritmo
PDF
Complejidad de Algoritmos
PPTX
Complejidad de los algoritmos
PDF
Analisis Algoritmo
PPTX
Complejidad de algoritmos
PPTX
Complejidad de algoritmos
PPTX
Complejidad de los algoritmos
PDF
Complejidad de los algoritmos | Análisis de algoritmos
PPT
Complejidad de Algoritmos
PPT
Complejidad de Algoritmos
PPTX
U1 Analisis Algoritmos Complejidad
PPT
Complejidad Computacional
PDF
ejercicios resueltos análisis de algoritmos
PDF
Teoría De La Complejidad Algoritmica
PPT
ANALISIS DE ALGORITMOS
PDF
Analisis y diseño de algoritmos
PPTX
complejidad de los algoritmos.
Algoritmos complejidad-1
Analisis de Algoritmos
Análisis de algoritmo
Complejidad de Algoritmos
Complejidad de los algoritmos
Analisis Algoritmo
Complejidad de algoritmos
Complejidad de algoritmos
Complejidad de los algoritmos
Complejidad de los algoritmos | Análisis de algoritmos
Complejidad de Algoritmos
Complejidad de Algoritmos
U1 Analisis Algoritmos Complejidad
Complejidad Computacional
ejercicios resueltos análisis de algoritmos
Teoría De La Complejidad Algoritmica
ANALISIS DE ALGORITMOS
Analisis y diseño de algoritmos
complejidad de los algoritmos.
Publicidad

Similar a Complejidad de un algoritmo (20)

PPTX
Complejidad de un algoritmo
PPTX
Complejidad de algoritmos
PPTX
La complejidad en los algoritmos
PPTX
Presentacion para analisis de algoritmo
PPT
Análisis de algoritmo 1
PPTX
Complejidad de algoritmos
PPTX
Eficiencia de algoritmos - Vanessa Ramirez
PPT
AnáLisis De Algoritmos1
PPT
AnáLisis De Algoritmos1
PDF
Complejidad algoritmos
PDF
Complejidad de los Algoritmos
PPTX
Complejidad de los algoritmos
PPTX
Complejidad de un algoritmo
PDF
Clasificacion de los problemas (1)
PDF
Analisis de algoritmo
PPTX
Complejidad de Algoritmos
PPTX
Cap2.1
PPTX
Complejidad de los algoritmos
PPTX
Complejidad de un algoritmo
PDF
Complejidad de los algoritmos
Complejidad de un algoritmo
Complejidad de algoritmos
La complejidad en los algoritmos
Presentacion para analisis de algoritmo
Análisis de algoritmo 1
Complejidad de algoritmos
Eficiencia de algoritmos - Vanessa Ramirez
AnáLisis De Algoritmos1
AnáLisis De Algoritmos1
Complejidad algoritmos
Complejidad de los Algoritmos
Complejidad de los algoritmos
Complejidad de un algoritmo
Clasificacion de los problemas (1)
Analisis de algoritmo
Complejidad de Algoritmos
Cap2.1
Complejidad de los algoritmos
Complejidad de un algoritmo
Complejidad de los algoritmos

Más de Lutzo Guzmán (10)

PPTX
Cuadro comparativo tipos de problemas
DOCX
Cuadro comparativo tipos de problemas
PPTX
Tipos de problemas
PPTX
Recorrido de grafos
PPTX
Representación de grafos.
PPTX
Ejemplo grafos
PPTX
Cuadro comparativo algoritmos de ordenamiento
DOCX
Cuadro comparativo torres de hanoi
DOCX
Cuadro comparativo torres de hanoi
DOCX
Algoritmos de busqueda - hash truncamiento
Cuadro comparativo tipos de problemas
Cuadro comparativo tipos de problemas
Tipos de problemas
Recorrido de grafos
Representación de grafos.
Ejemplo grafos
Cuadro comparativo algoritmos de ordenamiento
Cuadro comparativo torres de hanoi
Cuadro comparativo torres de hanoi
Algoritmos de busqueda - hash truncamiento

Complejidad de un algoritmo

  • 1. Complejidad de un algoritmo. Análisis de algoritmos. Autor: Luis Guzmán. Docente: Pilar Pardo. 26 – Marzo – 2014.
  • 2. ¿Qué es la complejidad de un algoritmo?
  • 3. La complejidad de un algoritmo es una métrica que se expresa según el tamaño del problema, en donde se mide la cantidad de recursos (tiempo – espacio) que el algoritmo necesite.
  • 4. En donde si el recurso a considerar es el espacio la complejidad se basa en la cantidad de memoria requerida para ejecutar, la cual está asociada a las estructuras de datos usadas en su implementación.
  • 6. La complejidad se basa en la cantidad de tiempo necesario para la ejecución de operaciones. Mientras que si el Recurso es tiempo
  • 7. La resolución de un problema puede obtenerse con muchos algoritmos. Por tanto, es obvio querer elegir el “mejor”. Si el problema es sencillo puede elegir el más “fácil”. Si el problema es complejo o existen muchas soluciones se tiene que elegir el algoritmo que menos recursos utilice (tiempo – espacio). La eficiencia de un algoritmo (lo rápido que se ejecutará) dependerá del “tamaño” de los datos de entrada.
  • 8. El peor de los casos indica el mayor tiempo obtenido, considerando todas las entradas posibles. El caso promedio indica el tiempo medio obtenido, considerando todas las entradas posibles. El mejor de los casos indica el menor tiempo obtenido, considerando todas las entradas posibles.
  • 9. Si los datos de entrada son grandes el tiempo de ejecución será mayor. Expresado como T(n). Tiempo de ejecución.
  • 11. Lo más importante del análisis de algoritmo es saber cómo crece el tiempo de ejecución cuando el tamaño de entrada crece. A esto se le denomina eficiencia asintótica del algoritmo, donde se indica como crece "t" para los valores que tienden al infinito, es decir con comportamiento asintótico.
  • 12. "Asintótico es analizar el comportamiento de las funciones en base a su tasa de crecimiento." Para esto se creó la notación Big-0 donde 0 es un valor que puede tender al infinito.
  • 13. Existe un conjunto de funciones que poseen un mismo comportamiento, a esto se le denomina orden de complejidad, el cual está representado por la siguiente tabla Complejidad Orden O(1) Constante 0(n2) Cuadrática 0(log n) Logarítmica 0(n) Lineal 0(n log n) Casi-Lineal 0(nb) Polinómica 0(bn) Exponencial 0(n!) Factorial