InsertionSort Algorithm in Java

Code:


package sort;

public class InsertionSort {



public static void main(String[] args) {
int[] arr = {3,7,4,9,5,2,6,1};

for(int i=1;i<arr.length;i++){
int currentValue=arr[i];
int previousIndex=i-1;
int insertions=0;
while(previousIndex>=0 && (arr[previousIndex]>currentValue)){ //if previous is greater than current

arr[previousIndex+1]=arr[previousIndex]; //swap it , assign greater to current location 7

previousIndex=previousIndex-1; // drives the loop
System.out.println("previousIndex:"+previousIndex);
insertions++;

}
System.out.println("CurrentValue["+currentValue+"]  insertions:["+insertions+"]");
arr[previousIndex+1]=currentValue; //assign the current(smaller value) to previous position 4

printArray(arr);
System.out.println();
}

}

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


}

Comments

Popular posts from this blog

Java Interview : Threads

Spring Framework Interview Notes : Part Two Wiring

Card Dealer In Java in Less than 5 minutes