OneCompiler

insertion sort Example in java

232

import java.util.*;

class InsertionSortingExample
{
public static void main(String[] args)
{
Date now =new Date();
System.out.println("Today's Time and date is:"+now);
System.out.println();
int arr[]={12,9,13,6,4,10};
int array[]=arr.clone();
System.out.println("this is clone array :before sorting :");
printArray(array);
arr[5]=2;
//this method is used to copy the array from other it is deep copy
InsertionSort(array);
//calling insertion method
System.out.println("this is clone array after sorting :");
printArray(array);
//calling printArray method
System.out.println("this is arr[] array before sorting : ");
printArray(arr);
int key=0;
for(int i=1;i<arr.length;i++)
{
key=arr[i];
int j=i-1;
while(j>=0 && arr[j]>key)
{
arr[j+1]=arr[j];
j=j-1;
}
arr[j+1]=key;
}
System.out.println("this is arr[] array after sorting: ");
for(int i=0;i<arr.length;i++)
{
System.out.print(arr[i]+" ");
}
System.out.println();
}
public static void InsertionSort(int[] arr)
{
int n=arr.length;
int max=0;
for(int i=1;i<n;i++)
{
max=arr[i];
int j=i-1;
while(j>=0 && arr[j]>max)
{
arr[j+1]=arr[j];
j=j-1;
}
arr[j+1]=max;
}
}
static void printArray(int[] arr)
{
for(int i=0;i<arr.length;i++)
{
System.out.print(arr[i]+" ");
}
System.out.println();
}
}