Saltar al contenido
Home » Ordenación de Burbuja

Ordenación de Burbuja

El algoritmo de ordenación de burbuja es uno de los métodos más simples para ordenar elementos en un arreglo. Aunque no es muy eficiente para arreglos grandes, es una excelente manera de entender los conceptos básicos de cómo funcionan los algoritmos de ordenación. En este artículo, exploraremos en profundidad el algoritmo de ordenación de burbuja en Java, proporcionando un ejemplo de programación acompañado de comentarios explicativos.

Introdución 

El algoritmo de ordenacion de burbuja opera comparando elementos adyacentes en un arreglo y realizando intercambios si estan en el orden incorrecto. Con cada iteracion a traves del arreglo, el algoritmo empuja el elemento mas grande hacia el final, «burbujeandolo» hasta su posicion correcta. Aunque no es eficiente para arreglos grandes debido a su complejidad cuadratica, es util para fines didacticos y pequenos conjuntos de datos.
 

Ejemplo de Programacion

A continuación, presentamos un ejemplo de implementación del algoritmo de ordenación de burbuja en Java, junto con comentarios que explican cada paso:
				
					 public class BubbleSort {
    public static void main(String[] args) {
        int[] arreglo = {5, 2, 9, 1, 5, 6};
        System.out.println("Arreglo original: " + Arrays.toString(arreglo));
        bubbleSort(arreglo);
        System.out.println("Arreglo ordenado: " + Arrays.toString(arreglo));
    }
    public static void bubbleSort(int[] arreglo) {
        int n = arreglo.length;
        for (int i = 0; i < n - 1; i++) {
            for (int j = 0; j < n - i - 1; j++) {
                if (arreglo[j] > arreglo[j + 1]) {
                    // Intercambiar arreglo[j] y arreglo[j+1]
                    int temp = arreglo[j];
                    arreglo[j] = arreglo[j + 1];
                    arreglo[j + 1] = temp;
                }
            }
        }
    }
}

				
			
  • arreglo es el arreglo que deseamos ordenar.
  • bubbleSort es la función encargada de realizar el algoritmo de ordenación de burbuja.
  • n es la longitud del arreglo.
  • El primer bucle for itera a través del arreglo desde el principio hasta el penúltimo elemento. Esto asegura que el mayor elemento ya ordenado se coloque en su posición final después de cada iteración.
  • El segundo bucle for realiza comparaciones adyacentes y realiza intercambios si es necesario.
  • La condición if (arreglo[j] > arreglo[j + 1]) verifica si los elementos adyacentes están en el orden incorrecto. Si es así, se realiza el intercambio utilizando una variable temporal temp.
  • Al finalizar la ejecución del algoritmo, el arreglo estará ordenado en orden ascendente.

Conclusión

El algoritmo de ordenación de burbuja es un punto de partida excelente para comprender los conceptos básicos de los algoritmos de ordenación. Aunque no es la opción más eficiente para arreglos grandes, su simplicidad y claridad son valiosas para aprender sobre manipulación de arreglos y comparaciones. Al explorar y experimentar con este algoritmo, los programadores pueden sentar las bases para comprender algoritmos de ordenación más avanzados y su aplicación en problemas del mundo real.