Arreglos

2. Algoritmos de ordenación: método de la burbuja

Una operación que se hace muy a menudo con los arrays, sobre todo con los de una dimensión, es ordenar sus elementos.
Dedicaremos más capítulos a algoritmos de ordenación, pero ahora  veremos uno de los más usados, aunque no de los más eficaces, se trata del método de la burbuja.
Consiste en recorrer la lista de valores a ordenar y compararlos dos a dos.
Si los elementos están bien ordenados, pasamos al siguiente par, si no lo están los intercambiamos, y pasamos al siguiente, hasta llegar al final de la lista.
El proceso completo se repite hasta que la lista está ordenada.

Veamos el método utilizando un ejemplo:

Ordenar la siguiente lista de menor a mayor:
15 | 3 | 8 | 6 | 18 | 1

Empezamos comparando 15 y 3. Como están mal ordenados los intercambiamos, la lista quedará:

3 | 15 | 8 | 6 |18 | 1

Tomamos el siguiente par de valores: 15 y 8, y volvemos a intercambiarlos, y seguimos el proceso...
Cuando lleguemos al final la lista estará así:

3 | 8 | 6 |15| 1| 18

Empezamos la segunda pasada, pero ahora no es necesario recorrer toda la lista. Si observas verás que el último elemento está bien ordenado, siempre será el mayor, por lo tanto no será necesario incluirlo en la segunda pasada.
Después de la segunda pasada la lista quedará:

3 | 6 | 8 | 1| 15 |18

Ahora es el 15 el que ocupa su posición final, la penúltima, por lo tanto no será necesario que entre en las comparaciones para la siguiente pasada.
Las sucesivas pasadas dejarán la lista así:

3ra)  3 | 6 | 1| 8 | 15 | 18
4ta)  3 |1 | 6 | 8 | 15 | 18
5ta)  1 | 3 | 6| 8  | 15 | 18