Ordenamiento burbuja

7

Transcript of Ordenamiento burbuja

Page 1: Ordenamiento burbuja
Page 2: Ordenamiento burbuja

HISTORIA Determinar con exactitud el origen del ordenamiento

burbuja es un poco complicado, ya que no existeinformación precisa sobre su origen.

Aunque en 1956 en un se encuentra expresado en unarticulo al q llamaron “ordenamiento por intercambio”

Existe una amplia bibliografía de artículos del año 1962donde mencionan tipos de ordenamiento basados eneste patrón, pero ninguno de ellos usando el nombrecomo tal.

Page 3: Ordenamiento burbuja

Sin evidente origen definitivo del nombre "burbuja“ secierran sus orígenes mediante la consulta de losprimeros artículos de revistas así como textosprofesionales y pedagógicos de esta época.

Obtiene su nombre de la forma con la que suben por lalista los elementos durante los intercambios, como sifueran pequeñas "burbujas".

También es conocido como el método del intercambiodirecto. Dado que solo usa comparaciones para operarelementos, se lo considera un algoritmo decomparación, siendo el más sencillo de implementar.

Page 4: Ordenamiento burbuja

FUNCIONAMIENTO Funciona revisando cada elemento de la lista que va a

ser ordenada con el siguiente, intercambiándolos de posición si están en el orden equivocado. Es necesario revisar varias veces toda la lista hasta que no se necesiten más intercambios, lo cual significa que la lista está ordenada.

Page 5: Ordenamiento burbuja

SIMULACION

Page 6: Ordenamiento burbuja

CODIGO class Bsort {

public static void main(String args[]) {

int nums[] = { 99, -10, 100123, 18, -978, 5623, 463, -9, 287, 49 };

int a, b, t;

int dimen;

dimen = 10; // numero de elementos a ordenar

// despliega el arreglo original

System.out.print("El arreglo origial es:");

for(int i=0; i < dimen; i++)

System.out.print(" " + nums[i]);

System.out.println();

// Oredenamos comparando.

for(a=1; a < dimen; a++)

for(b=dimen-1; b >= a; b--) {

if(nums[b-1] > nums[b]) { // si està fuera de orden

// intercambia elementos

t = nums[b-1];

nums[b-1] = nums[b];

nums[b] = t;

}

}

// despliega el arreglo ordenado

System.out.print("El arreglo ordenado es:");

for(int i=0; i < dimen; i++)

System.out.print(" " + nums[i]);

System.out.println();

}

}

Page 7: Ordenamiento burbuja

DIAGRAMA DE FLUJO N-S