Selection Sorting in Java Program with Example

Selection Sorting in Java Program with Example

 

How does Selection Sort work?

Selection Sort implements a simple sorting algorithm as follows:

  • Algorithm repeatedly searches for the lowest element.
  • Swap current element with an element having the lowest value
  • With every iteration/pass of selection sort, elements are swapped.
  •  

Java Program to implement Selection Sort

  • package com.guru99;
  •  
  • public class SelectionSortAlgo {
  •  
  •  
  •  
  • public static void main(String a[])
  •  
  • {
  •  
  • int[] myArray = {860,8,200,9};
  •  
  • System.out.println(“——Before Selection Sort—–“);
  •  
  • printArray(myArray);
  •  
  •  
  • selection(myArray);//sorting array using selection sort
  •  
  •  
  • System.out.println(“—–After Selection Sort—–“);
  •  
  •  
  • printArray(myArray);
  •  
  • }
  •  
  • public static void selection(int[] array)
  •  
  • {
  •  
  • for (int i = 0; i < array.length 1; i++)
  •  
  • { System.out.println(“Sort Pass Number “+(i+1));
  •  
  • int index = i;
  •  
  • for (int j = i + 1; j < array.length; j++)
  •  
  • {
  •  
  • System.out.println(“Comparing “+ array[index] + ” and “ + array[j]);
  •  
  • if (array[j] < array[index]){
  •  
  • System.out.println(array[index] + ” is greater than “ + array[j] );
  •  
  • index = j;
  •  
  •  
  • }
  •  
  • }
  •  
  •  
  • int smallerNumber = array[index];
  •  
  • array[index] = array[i];
  •  
  • array[i] = smallerNumber;
  •  
  • System.out.println(“Swapping Elements: New Array After Swap”);
  •  
  • printArray(array);
  •  
  • }
  •  
  • }
  •  
  • static void printArray(int[] array){
  •  
  •  
  • for(int i=0; i < array.length; i++)
  •  
  • {
  •  
  • System.out.print(array[i] + ” “);
  •  
  • }
  •  
  • System.out.println();
  •  
  • }
  •  
  • }

Output:

------Before Selection Sort-----
860 8 200 9 
Sort Pass Number 1
Comparing 860 and 8
860 is greater than 8
Comparing 8 and 200
Comparing 8 and 9
Swapping Elements: New Array After Swap
8 860 200 9 
Sort Pass Number 2
Comparing 860 and 200
860 is greater than 200
Comparing 200 and 9
200 is greater than 9
Swapping Elements: New Array After Swap
8 9 200 860 
Sort Pass Number 3
Comparing 200 and 860
Swapping Elements: New Array After Swap
8 9 200 860 
-----After Selection Sort-----
8 9 200 860 
top
X
Welcome to Our Website
Welcome to WPBot
wpChatIcon