From 2b02d483773d8a8a71ee837a37abb0d16a1729d3 Mon Sep 17 00:00:00 2001 From: Varun Upadhyay Date: Sun, 20 Aug 2017 07:48:19 -0700 Subject: [PATCH] Updated Insertion Sort Updated Insertion Sort to its Generic version --- Sorts/InsertionSort.java | 96 +++++++++++++++++++++++----------------- 1 file changed, 55 insertions(+), 41 deletions(-) diff --git a/Sorts/InsertionSort.java b/Sorts/InsertionSort.java index d9d865663..ee33a03fd 100644 --- a/Sorts/InsertionSort.java +++ b/Sorts/InsertionSort.java @@ -1,49 +1,63 @@ -import java.util.Scanner; - /** - * This class implements Insertion Sort - * - * @author Unknown + * + * @author Varun Upadhyay (https://github.com/varunu28) * */ -class InsertionSort -{ - /** - * Main Method - * - * @param args Command line arguments - */ - public static void main(String[] args) - { - int array[]=new int[6]; - Scanner input=new Scanner(System.in); - //Input - System.out.println("Enter any 6 Numbers for Unsorted Array : "); - for(int i=0; i<6; i++) - { - array[i]=input.nextInt(); - } +class InsertionSort { - //Sorting - for(int i=0; i<6; i++) - { - int temp=array[i]; - int j=i-1; - while(j>=0 && temp> void IS(T array[], int last) { + T key; + for (int j=1;j=0 && key.compareTo(array[i]) < 0) { + array[i+1] = array[i]; + i--; + } + // Placing the key (Card) at its correct position in the sorted subarray + array[i+1] = key; + } + } - //Output - for(int i=0; i<6; i++) - { - System.out.print(array[i]+"\t"); - } - input.close(); - } + // Driver Program + public static void main(String[] args) { + // Integer Input + int[] arr1 = {4,23,6,78,1,54,231,9,12}; + int last = arr1.length; + Integer[] array = new Integer[arr1.length]; + for (int i=0;i 1 4 6 9 12 23 54 78 231 + for (int i=0;i a b c d e + for(int i=0; i