much implementation, ready for first test

This commit is contained in:
2020-05-30 18:46:10 -05:00
parent 741d29f148
commit c680ec7671
8 changed files with 159 additions and 11 deletions

View File

@@ -1,5 +1,55 @@
package Sorting;
//import java.util.Arrays;
//import java.util.List;
public class InsertionSorter extends Sorter{
public InsertionSorter(String filename){
super("insertion", filename);
}
void sort(){
int insertionValue;
for(int i=1;i<numbers.length;i++){
insertionValue=numbers[i];
insert(i, insertionValue);
}
}
private void insert(int index, int ins){
for(int i=index-1;i>=0;i--){
int comp = compare(ins,numbers[i]);
if(comp<0){
if(i==0){
numbers[i+1]=numbers[i];
numbers[i]=ins;
}
else{
numbers[i+1]=numbers[i];
}
}
else{
numbers[i+1]=ins;
}
}
}
/*
*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);
}*/
}