Documente Academic
Documente Profesional
Documente Cultură
COMPLEJIDAD DE
ALGORITMOS
Autor:
Curso:
Docente:
ÍNDICE
2
INTRODUCCIÓN......................................................................................................... 3
1. MARCO TEÓRICO............................................................................................... 4
1.1. OBJETIVOS GENERALES........................................................................................................4
1.2. OBJETIVO ESPECIFICO..........................................................................................................4
2. ANALISIS TEORICO............................................................................................ 4
2.1. COMPLEJIDAD...........................................................................................................................4
2.1.1. COMPLEJIDAD ASINTÓTICA……………………………………………………………………4
2.2. ALGORITMO...............................................................................................................................5
2.3. ALGORITMOS DE ORDENAMIENTO.....................................................................................5
2.4. PROGRAMACION......................................................................................................................5
2.5. JAVA 6
2.6. NETBEANS..................................................................................................................................6
2.7. METODO......................................................................................................................................6
2.8. CLASE..........................................................................................................................................7
2.9. INSTANCIAS...............................................................................................................................7
3. EJEMPLO DE ALGORITMO DE ORDENAMIENTO BURBUJA................................8
3.1. ANALISIS.....................................................................................................................................9
4. CONCLUSIONES............................................................................................... 10
5. BIBLIOGRAFÍA................................................................................................... 11
3
INTRODUCCIÓN
manera diferente.
tardará un tiempo y para un tiempo mayor cumplirá f(n2) la complejidad nos describe el
tipo de curva que cumplirá esa función f. Esto lo representamos como O(f).”
Así mismo según [ CITATION Gil14 \l 10250 ] “El tiempo que tardará para un tamaño
posible la cantidad necesaria de recursos de sistema, en pocas palabras que sea lo más
eficiente posible.
Podemos tener algoritmos que realicen lo mismo, sin embargo, siempre uno será más
eficiente que el otro y para analizar ello es necesario analizar la complejidad para poder
1. MARCO TEÓRICO
identificar los recursos que necesitan para resolver problemas y con ello dar a conocer que tan
realice durante las clases y fuera, como parte de reforzamiento del conocimiento.
2. ANÁLISIS TEORICO
2.1. COMPLEJIDAD
Son los cálculos mínimos y máximos que realiza un algoritmo, representado por la
cantidad de recursos que utiliza el algoritmo para su ejecución, de esto depende que tan
eficiente es el mismo.
Según [ CITATION Lup17 \l 10250 ] “La notación asintótica nos permite representar la
(input).”
5
2.2. ALGORITMO
Según los autores [ CITATION Joy \l 10250 ]“Un algoritmo es un método para resolver
un problema mediante una serie de pasos precisos, definidos y finitos (la solución se
El algoritmo debe ser directo y preciso, así mismo, tiene que brindar el orden de
El algoritmo en algún momento debe de terminar, por lo cual debe ser finito.
Tras la ejecución de un algoritmo, este debe brindar el mismo resultado, por lo que
Es un algoritmo que coloca elementos de una lista o un vector en una secuencia dada por
una relación de orden, es decir, obtendremos como resultado de salida, una permutación o
En otras palabras, nos permiten cambiar el orden de elementos que existen en una
estructura, moviendo elementos dentro de un vector para darles un orden lógico, generalmente
se espera que se ordene de menor a mayo o viceversa. Se puede utilizar este algoritmo frente a
cualquier cosa que sea ordenable, cualquier tipo de datos que tenga alguna propiedad que sea
Existen algoritmos de ordenamiento que son unos más rápidos que otros al trabajar con los
datos.
6
2.4. PROGRAMACIÓN
2.5. JAVA
mismo es multiplataforma y gratis, sirve para base de datos, aplicaciones, interfaces yes muy
completo.
2.6. NETBEANS
de programación, es multiplataforma.
y arrastrar para incluir componentes en nuestro código. Esta herramienta permite a los
2.7. MÉTODO
Son un conjunto de subprogramas dentro de una clase lo cual ahorra a no ser redundante y
tener un código más limpio, así mismo los métodos nos ayuda a optimizar los recursos del
2.8. CLASE
Las clases son los bloques de construcción fundamentales de los programas orientados a
objetos. Una clase contiene la especificación de los datos que describen un objeto junto
con la descripción de las acciones que un objeto conoce cómo ha de ejecutar. Estas
266 \l 10250 ].
2.9. INSTANCIAS
función específica requerida por los usuarios, sin tener que preocuparse de los detalles de
3.1. ANÁLISIS
Para:
f(x)= n+4m*n
10
Esto aparece en burbujas o recursiones que son doblemente anidados como es el caso del
método trabajado.
Element Operacio
os nes
n n^2
10 100
20 400
30 900
40 1600
50 2500
60 3600
70 4900
4. CONCLUSIONES
Es importante elegir un algoritmo que sea estructurado y que sea eficiente ya que con esto
Es necesario realizar el análisis de complejidad para poder tomar buenas decisiones que no
Los algoritmos que realizan la misma función, no son necesariamente iguales o parecidos.
5. BIBLIOGRAFÍA
Joyanes Aguilar, L., & Zahonero Martinez, I. (s.f.). Programacion en java. Mexico: Mc Graw
Hill.
Montero, L. (2017). Algoritmos y notación asintótica. Laboratoria Dev.
Quiroz, M. (2007).