Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Java

Selection Sort en Java: Ejemplo Paso a Paso y Código Completo

¿Qué es Selection Sort?

Selection Sort (ordenamiento por selección) es un algoritmo sencillo basado en comparaciones que selecciona repetidamente el elemento más pequeño restante y lo intercambia a su posición. Aunque no es el más rápido para grandes conjuntos de datos, su simplicidad lo hace ideal para fines educativos y arrays pequeños.

Cómo Funciona el Algoritmo

Implementación en Java

A continuación se muestra un programa Java conciso que demuestra el algoritmo de selection sort en un array de enteros. El código imprime el array antes y después de ordenar, así como los pasos intermedios para ilustrar cada pasada.

package com.guru99;
public class SelectionSortAlgo {
    public static void main(String[] args) {
        int[] myArray = {860, 8, 200, 9};
        System.out.println("------Antes de Selection Sort-----");
        printArray(myArray);
        selection(myArray); // Ordenar el array
        System.out.println("-----Después de Selection Sort-----");
        printArray(myArray);
    }

    public static void selection(int[] array) {
        for (int i = 0; i < array.length - 1; i++) {
            System.out.println("Pasada de Ordenamiento Número " + (i + 1));
            int index = i;
            for (int j = i + 1; j < array.length; j++) {
                System.out.println("Comparando " + array[index] + " y " + array[j]);
                if (array[j] < array[index]) {
                    System.out.println(array[index] + " es mayor que " + array[j]);
                    index = j;
                }
            }
            int smallerNumber = array[index];
            array[index] = array[i];
            array[i] = smallerNumber;
            System.out.println("Intercambiando Elementos: Nuevo Array Después del Intercambio");
            printArray(array);
        }
    }

    private static void printArray(int[] array) {
        for (int i = 0; i < array.length; i++) {
            System.out.print(array[i] + " ");
        }
        System.out.println();
    }
}

Salida de Ejemplo

------Antes de Selection Sort-----
860 8 200 9
Pasada de Ordenamiento Número 1
Comparando 860 y 8
860 es mayor que 8
Comparando 8 y 200
Comparando 8 y 9
Intercambiando Elementos: Nuevo Array Después del Intercambio
8 860 200 9
Pasada de Ordenamiento Número 2
Comparando 860 y 200
860 es mayor que 200
Comparando 200 y 9
200 es mayor que 9
Intercambiando Elementos: Nuevo Array Después del Intercambio
8 9 200 860
Pasada de Ordenamiento Número 3
Comparando 200 y 860
Intercambiando Elementos: Nuevo Array Después del Intercambio
8 9 200 860
-----Después de Selection Sort-----
8 9 200 860

Notas de Rendimiento

Selection Sort realiza O(n²) comparaciones independientemente de la entrada y usa como máximo O(1) memoria adicional. Su comportamiento determinista lo hace adecuado para entornos donde la memoria es limitada.

Java

  1. Dominar Arrays en Java: Declaración, Inicialización y Manipulación
  2. Java Hola Mundo: Guía paso a paso para escribir tu primer programa Java
  3. Encapsulamiento en Java: Guía completa con ejemplo práctico
  4. Variables y tipos de datos en Java – Guía completa con ejemplos
  5. Método Java String length(): Cómo obtener el tamaño de un String (Ejemplo)
  6. Entendiendo Java String.charAt(): Sintaxis, tipo de retorno, excepciones y ejemplo práctico
  7. Método Java String.contains(): Cómo comprobar subcadenas – Ejemplos prácticos
  8. Dominando Java String.endsWith(): Cómo comprobar sufijos de cadena con ejemplos
  9. Lectura de archivos en Java con BufferedReader – Guía práctica con ejemplos
  10. Domine Bubble Sort en Java: Ejemplo Claro y Recorrido Paso a Paso
  11. Algoritmo Insertion Sort en Java: Ejemplo Claro y Guía Paso a Paso