Está en la página 1de 4

ESCUELA POLITÉCNICA NACIONAL

FACULTAD DE INGENIERÍA DE SISTEMAS


INGENIERÍA DE SISTEMAS INFORMÁTICOS Y DE COMPUTACIÓN

Algoritmos
Método de ordenamiento Burbuja
(11/Octubre/2018)
Henrry Cordovillo, David Cruz

I. Objetivo
 Aprender el Método de ordenamiento
 Analizar paso a paso cómo funciona el método burbuja
 Implementarlo en un lenguaje de programación
II. Marco Teórico

Método Burbuja:

Este método consiste en acomodar el vector moviendo el mayor hasta la última casilla
comenzando desde la casilla cero del vector hasta haber acomodado el número más grande en la
última posición, una vez acomodado el más grande, prosigue a encontrar y acomodar el
siguiente más grande comparando de nuevo los números desde el inicio del vector, y así sigue
hasta ordenar todo los elementos el arreglo. Este algoritmo es muy deficiente ya que al ir
comparando las casillas para buscar el siguiente más grande, éste vuelve a comparar las ya
ordenadas. A pesar de ser el algoritmo de ordenamiento más deficiente que hay, éste es el más
usado en todos los lenguajes de programación.

Este algoritmo obtiene su nombre de la forma con la que suben por la lista los elementos
durante los intercambios, como si fueran pequeñas "burbujas". También es conocido como el
método del intercambio directo. Dado que solo usa comparaciones para operar elementos, se lo
considera un algoritmo de comparación, siendo uno de los más sencillos de implementar.

Análisis del algoritmo:

Éste es el análisis para la versión no optimizada del algoritmo:

Estabilidad: Este algoritmo nunca intercambia registros con claves iguales. Por lo tanto es
estable.

Requerimientos de Memoria: Este algoritmo sólo requiere de una variable adicional para
realizar los intercambios.

Tiempo de Ejecución: El ciclo interno se ejecuta n veces para una lista de n elementos. El ciclo
externo también se ejecuta n veces. Es decir, la complejidad es n * n = O(n2). El
comportamiento del caso promedio depende del orden de entrada de los datos, pero es sólo un
poco mejor que el del peor caso, y sigue siendo O(n2).
ESCUELA POLITÉCNICA NACIONAL
FACULTAD DE INGENIERÍA DE SISTEMAS
INGENIERÍA DE SISTEMAS INFORMÁTICOS Y DE COMPUTACIÓN

Ventajas:

Fácil implementación.
No requiere memoria adicional.

Desventajas:

Muy lento.
Realiza numerosas comparaciones.
Realiza numerosos intercambios.
Este algoritmo es uno de los más pobres en rendimiento.
III. Desarrollo

La implementación del método burbuja lo hicimos en el lenguaje java, para esto utilizamos el
programa eclipse

Lo primero que definimos es un array de 4 datos el cual lo inicializamos con 5,3,4,2.

Luego creamos dos for los cual recorrerían el array y dentro del segundo for pusimos un if en el
cual está la condición para comprobar los dos números encapsulados y también dentro de este
hace el intercambio de las posiciones.

Al final imprimimos el array utilizando la función Arrays.toString


ESCUELA POLITÉCNICA NACIONAL
FACULTAD DE INGENIERÍA DE SISTEMAS
INGENIERÍA DE SISTEMAS INFORMÁTICOS Y DE COMPUTACIÓN

Al compilar con distintos ejemplos vemos que el código da el resultado esperado

IV. Conclusión
 Pudimos apreciar cómo funciona paso a paso el método de ordenamiento
burbuja.
 Al principio cuando intentamos implementar el código tuvimos algunos
conflictos ya que no entendíamos a profundidad el método.
 El método de ordenamiento burbuja no es el método más eficiente que existe en
la actualidad.
ESCUELA POLITÉCNICA NACIONAL
FACULTAD DE INGENIERÍA DE SISTEMAS
INGENIERÍA DE SISTEMAS INFORMÁTICOS Y DE COMPUTACIÓN

V. Bibliografía

http://c.conclase.net/orden/?cap=burbuja

https://es.wikipedia.org/wiki/Ordenamiento_de_burbuja

http://www.estructuradedatos.galeon.com/burbujatext.htm

VI. Anexos

package metodos_de_ordenamientos;
import java.util.Arrays;
public class MainBurbuja {
public static void main(String[] args) {
// TODO Auto-generated method stub
int []Array = {3,6,4,1,5,2,7};
System.out.println("Array Inicial: "+Arrays.toString(Array));
for(int i =0;i<Array.length-1;i++) {
for(int j =0;j<Array.length-1;j++) {
if(Array[j]>Array[j+1]) {
int aux=Array[j+1];
Array[j+1]=Array[j];
Array[j]=aux;
}
}
}
System.out.println("Array Ordenado: "+Arrays.toString(Array));
}

También podría gustarte