3. 새로 들어온 데이터를 저장하는 insert() 함수를 작성하겠습니다.

    void insert(int data)
    {
        if (maxHeap.size() == 0)
        {
            maxHeap.push(data);
            return;
        }
    
        if (maxHeap.size() == minHeap.size())
        {
            if (data <= get())
                maxHeap.push(data);
            else
                minHeap.push(data);
    
            return;
        }
    
        if (maxHeap.size() < minHeap.size())
        {
            if (data > get())
            {
                maxHeap.push(minHeap.top());
                minHeap.pop();
                minHeap.push(data);
            }
            else
                maxHeap.push(data);
            return;
        }
    
        if (data < get())
        {
            minHeap.push(maxHeap.top());
            maxHeap.pop();
            maxHeap.push(data);
        }
        else
            minHeap.push(data);
    }
    
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.