Advertisement
Guest User

Untitled

a guest
Apr 1st, 2020
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 0.90 KB | None | 0 0
  1.     public static void merge(ArrayList<Integer> a, ArrayList<Integer> b) {
  2.  
  3.         int aSize = a.size();
  4.         int bSize = b.size();
  5.  
  6.         ArrayList<Integer> merged = new ArrayList<>(aSize + bSize);
  7.  
  8.         int fooPosition, barPosition, mergedPosition;
  9.         fooPosition = barPosition = mergedPosition = 0;
  10.  
  11.         while (fooPosition < aSize && barPosition < bSize) {
  12.             if (a.get(fooPosition) < b.get(barPosition)) {
  13.                 merged.add(mergedPosition++, a.get(fooPosition++));
  14.             } else {
  15.                 merged.add(mergedPosition++, b.get(barPosition++));
  16.             }
  17.         }
  18.  
  19.         while (fooPosition < aSize) {
  20.             merged.add(mergedPosition++, a.get(fooPosition++));
  21.         }
  22.  
  23.         while (barPosition < bSize) {
  24.             merged.add(mergedPosition++, b.get(barPosition++));
  25.         }
  26.  
  27.         a.clear();
  28.         a.addAll(merged);
  29.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement