simplifying iterator use
This commit is contained in:
@@ -12,19 +12,26 @@ public class InsertionSorterLinkedList extends Sorter{
|
|||||||
|
|
||||||
protected void sort(){
|
protected void sort(){
|
||||||
LinkedList<Integer> numbersLL = new LinkedList<Integer>(Arrays.asList(numbers));//make a linked list from numbers array
|
LinkedList<Integer> numbersLL = new LinkedList<Integer>(Arrays.asList(numbers));//make a linked list from numbers array
|
||||||
int count=0;
|
int index=0;
|
||||||
ListIterator<Integer> iter = numbersLL.listIterator(count);
|
ListIterator<Integer> iter = numbersLL.listIterator(count);
|
||||||
while(count<numbersLL.size()){
|
while(index<numbersLL.size()&&iter.hasNext()){
|
||||||
int value = iter.next();
|
int value = iter.next();
|
||||||
iter.remove();
|
iter.remove();
|
||||||
if(iter.hasPrevious()){
|
if(iter.hasPrevious()){
|
||||||
int current;
|
int current=value;
|
||||||
do{
|
do{
|
||||||
current = iter.previous();
|
current = iter.previous();
|
||||||
}while(current>value);
|
destIndex++;
|
||||||
|
}while(compare(current,value)>0 && iter.hasPrevious());
|
||||||
|
if(compare(current,value)<0){
|
||||||
|
iter.next();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
iter.add(value);
|
iter.add(value);
|
||||||
count++;
|
while(iter.nextIndex()<=index){
|
||||||
|
iter.next();
|
||||||
|
}
|
||||||
|
index++;
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
for(int i=0;i<numbers.length;i++){
|
for(int i=0;i<numbers.length;i++){
|
||||||
|
|||||||
Reference in New Issue
Block a user