package sort;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/*
* Merge Sort for Fairly Large Arrays
*
* Create Marks based on size and places everything into a map containing position and data Reprocess until N/n arrays are created. Sort each array.
* Put each point into a new array list as an already sorted array.
*
* asevans 9.12.2013
*/
public class MergeSort<E extends Comparable> {
private ArrayList<E> data = new ArrayList<E>();
public MergeSort(ArrayList<E> keys) {
List<E> list = new ArrayList<E>();
for (E k : keys) {
list.add(k);
}
Collections.sort(list);
for (Object d : list) {
data.add((E) d);
}
}
public void setData(ArrayList<E> inout) {
data = inout;
}
public ArrayList<E> getData() {
return data;
}
}