JAVA code using min heap (simple to understand)


#1
public class Solution {
    public void merge(ArrayList<Integer> a, ArrayList<Integer> b) {
        PriorityQueue<Integer> Q1 = new PriorityQueue<Integer>();
        for(int i = 0 ; i < a.size() ; i++){
            Q1.add(a.get(i));
        }
        for(int j = 0 ; j < b.size() ; j++){
            Q1.add(b.get(j));
        }
        for(int i = 0 ; i < a.size() ; i++){
            a.set(i,Q1.poll());
        }
        while(!Q1.isEmpty()){
            a.add(Q1.poll());
        }
    }
}