Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private static void mergeSort(ArrayList<objeto> items){
- if (items.size() == 1) {
- //insert(items);
- }
- else{
- int n = items.size() - 1;
- int k = n /2;
- ArrayList<objeto> U = new ArrayList<objeto>();
- ArrayList<objeto> V = new ArrayList<objeto>();
- copy(items,U,0,k);
- copy(items,V,k+1,n);
- mergeSort(U);
- mergeSort(V);
- merge(U,V,items);
- }
- }
- private static void copy(ArrayList<objeto> src,ArrayList<objeto> dest, int i,int j){
- for (int ini=i; ini<= j;ini++){
- dest.add(src.remove(0));
- }
- }
- private static void merge(ArrayList<objeto> src1,ArrayList<objeto> src2,ArrayList<objeto> out){
- while (!src1.isEmpty() && !src2.isEmpty()){
- if (src1.get(0).getAverage() > src2.get(0).getAverage()){
- out.add(src1.remove(0));
- }
- else out.add(src2.remove(0));
- }
- while (!src1.isEmpty()){
- out.add(src1.remove(0));
- }
- while (!src2.isEmpty()){
- out.add(src2.remove(0));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement