private void bubbleUp(int pos) {
        int last = a[pos];
        Integer parentPos = parent(pos);
        if(parentPos != null) {
            if(a[parentPos] < last) {
                swap(a,pos, parentPos);
                bubbleUp(parentPos);
            }
        }
    }