private void siftUp(){
        int k = items.size() - 1;
        while(k > 0){
            int p = (k - 1)/2;
            T item = items.get(k);
            T parent = items.get(p);

            if(item.compareTo(parent) > 0){
                //Swap
                items.set(k, parent);
                items.set(p, item);

                k = p;
            }else{
                break;
            }
        }
    }