Files
Tutoring-APCompSci/Sorting/InsertionSorter.java
2020-06-11 14:06:24 -05:00

44 lines
1.0 KiB
Java

package Sorting;
//import java.util.Arrays;
//import java.util.List;
public class InsertionSorter extends Sorter{
public InsertionSorter(RandomNumberFileReader reader){
super("insertion sort", reader);
}
void sort(){
int insertionValue;
for(int i=1;i<numbers.length;i++){
insertionValue=numbers[i];
int j=i-1;
while(j>=0 && compare(numbers[j],insertionValue)>0){
writeToArray(numbers, j+1, numbers[j]);
j--;
}
writeToArray(numbers, j+1, insertionValue);
}
}
/*
//This method uses a List for simple insertion
//But I want to go C-style and just do array manipulation
void sort(){
List<Integer> nums = Arrays.asList(numbers);
for(int i=1;i<nums.size();i++){
int j=0;
while((j<i)&&(nums.get(i).compareTo(nums.get(j))>0)){
j++;
}
if(j!=i){
swapsUsed++;
nums.add(j, nums.remove(i));
}
}
nums.toArray(numbers);
}*/
}