public void addNum(int num) {
        double median = findMedian();
        if (minQ.size() == maxQ.size()) {
            if (num > median) {
                minQ.add(num);
            } else {
                maxQ.add(num);
            }
        } else if (minQ.size() > maxQ.size()) {
            if (num > median) {
                minQ.add(num);
                maxQ.add(minQ.poll());
            } else {
                maxQ.add(num);
            }
        } else {
            if (num < median) {
                maxQ.add(num);
                minQ.add(maxQ.poll());
            } else {
                minQ.add(num);
            }
        }
    }