Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Java

Selection Sort in Java: Stapsgewijze voorbeeld & complete code

Wat is Selection Sort?

Selection Sort is een eenvoudig vergelijkingsgebaseerd algoritme dat herhaaldelijk het kleinste overgebleven element selecteert en op de juiste plek verwisselt. Hoewel niet het snelste voor grote datasets, maakt de eenvoud het ideaal voor educatieve doeleinden en kleine arrays.

Hoe het algoritme werkt

  • Begin aan het begin van de array.
  • Zoek het kleinste element in het ongesorteerde deel.
  • Verwissel het met het element op de huidige positie.
  • Verschuif de grens tussen gesorteerde en ongesorteerde secties één stap naar rechts.
  • Herhaal tot de hele array gesorteerd is.

Java-implementatie

Hieronder staat een beknopt Java-programma dat het selection sort algoritme demonstreert op een integer-array. De code print de array voor en na sorteren, evenals de tussentijdse stappen om elke pas te illustreren.

 package com.guru99; public class SelectionSortAlgo { public static void main(String[] args) { int[] mijnArray = {860, 8, 200, 9}; System.out.println("------Voor Selection Sort-----"); printArray(mijnArray); selection(mijnArray); // Array sorteren System.out.println("-----Na Selection Sort-----"); printArray(mijnArray); } public static void selection(int[] array) { for (int i = 0; i < array.length - 1; i++) { System.out.println("Sorteerpas nummer " + (i + 1)); int index = i; for (int j = i + 1; j < array.length; j++) { System.out.println("Vergelijken " + array[index] + " en " + array[j]); if (array[j] < array[index]) { System.out.println(array[index] + " is groter dan " + array[j]); index = j; } } int kleinerGetal = array[index]; array[index] = array[i]; array[i] = kleinerGetal; System.out.println("Elementen verwisselen: Nieuwe array na wissel"); printArray(array); } } private static void printArray(int[] array) { for (int i = 0; i < array.length; i++) { System.out.print(array[i] + " "); } System.out.println(); } } 

Voorbeelduitvoer

 ------Voor Selection Sort----- 860 8 200 9 Sorteerpas nummer 1 Vergelijken 860 en 8 860 is groter dan 8 Vergelijken 8 en 200 Vergelijken 8 en 9 Elementen verwisselen: Nieuwe array na wissel 8 860 200 9 Sorteerpas nummer 2 Vergelijken 860 en 200 860 is groter dan 200 Vergelijken 200 en 9 200 is groter dan 9 Elementen verwisselen: Nieuwe array na wissel 8 9 200 860 Sorteerpas nummer 3 Vergelijken 200 en 860 Elementen verwisselen: Nieuwe array na wissel 8 9 200 860 -----Na Selection Sort----- 8 9 200 860 

Prestatie-opmerkingen

Selection Sort voert O(n²) vergelijkingen uit ongeacht de invoer en gebruikt maximaal O(1) extra geheugen. Het deterministische gedrag maakt het geschikt voor omgevingen waar geheugen beperkt is.

Java

  1. Java arrays beheersen: declaratie, initialisatie en manipulatie
  2. Java Hello World: Stap-voor-stap gids om je eerste Java-programma te schrijven
  3. Encapsulatie in Java: Uitgebreide gids met praktisch voorbeeld
  4. Java Variabelen en Datatypes – Uitgebreide gids met voorbeelden
  5. Java String length() Methode: Hoe de grootte van een String op te vragen (Voorbeeld)
  6. Java String.charAt() begrijpen: Syntaxis, Retourtype, Exceptions en Praktisch Voorbeeld
  7. Java String.contains() Methode: Controleren op Substrings – Praktische Voorbeelden
  8. Java String.endsWith() beheersen: Controleren op String-suffixen met voorbeelden
  9. Bestanden Lezen in Java met BufferedReader – Een Praktische Gids met Voorbeelden
  10. Bubble Sort in Java beheersen: Duidelijk voorbeeld & stapsgewijze walkthrough
  11. Insertion Sort algoritme in Java: Duidelijk voorbeeld & stapsgewijze handleiding