julio 02, 2014

Algoritmo Burbuja - Bubble Sort

El algoritmo de la burbuja tiene como objetivo ordenar una lista de elementos contenidos en un arreglo... y es la forma mas intiuitiva de hacerlo.

Los pasos para hacerlo son los siguientes:
1. Recorrer todo el arreglo con una sentencia iterativa (for, while, do/while)
2. Comparar el elemento i con el elemento i+1
3. Si por alguna razon el elemento i+1 contiene un valor menor al elemento i, se intercambian.
4. Si recorres el arreglo una vez con estas condiciones, el ultimo elemento será el mayor de todos... magia?
5. Por lo tanto hay que recorrer el elemento tantas veces como elementos haya en el arreglo para que se acomoden todos.

y ahora el algoritmo:

sea Arreglo un arreglo de enteros desordenados

for(int iI = 0; iI < Arreglo.length; iI++)
{
    for(int iJ = 0; iJ < Arreglo.length; iJ++)
    {
         if(Arreglo[iJ] < Arreglo[iJ+1])
        {
            Auxiliar = Arreglo[iJ];
            Arreglo[iJ] = Arreglo[iJ+1];
            Arreglo[iJ+1] = Auxiliar;
        }
    }
}

y es todo :P