Saltar al contenido
Home » Ordenacion por Selección

Ordenacion por Selección

El algoritmo de ordenación por selección es otro método fundamental para organizar elementos en un arreglo. Aunque no es la opción más eficiente en términos de tiempo, el ordenamiento por selección es fácil de entender y es útil para comprender los conceptos de ordenamiento. En este artículo, exploraremos a fondo el algoritmo de ordenación por selección en Java, proporcionando un ejemplo de programación acompañado de comentarios explicativos.

Introdución 

El algoritmo de ordenación por selección opera dividiendo el arreglo en dos partes: una parte ordenada y una parte no ordenada. En cada iteración, se busca el elemento mínimo de la parte no ordenada y se coloca en la parte ordenada. Aunque no es el método más rápido para ordenar grandes arreglos, es útil para arreglos pequeños o en situaciones donde se requiere un número limitado de intercambios.

Ejemplo de Programacion

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

				
			

Comentarios Explicativos

  • arreglo es el arreglo que queremos ordenar.
  • selectionSort es la función que implementa el algoritmo de ordenación por selección.
  • El bucle for exterior itera a través del arreglo, considerando una parte ordenada y una parte no ordenada.
  • El bucle for interior busca el índice del elemento mínimo en la parte no ordenada del arreglo.
  • Si se encuentra un elemento más pequeño, se actualiza el indiceMinimo.
  • Después de encontrar el índice mínimo, se intercambia con el elemento en la posición actual del bucle exterior.
  • Al finalizar la ejecución del algoritmo, el arreglo estará ordenado en orden ascendente.

Conclusion

El algoritmo de ordenación por selección es un método sencillo pero valioso para comprender cómo los algoritmos de ordenación operan. Aunque puede no ser el más rápido para arreglos grandes, su enfoque en la búsqueda del elemento mínimo y su intercambio gradual lo hacen efectivo para pequeños conjuntos de datos. Al explorar y experimentar con este algoritmo, los desarrolladores pueden obtener una base sólida para comprender otros algoritmos de ordenación más complejos y su aplicación en problemas del mundo real.

Etiquetas: