题解 | #数据流中的中位数#
数据流中的中位数
https://www.nowcoder.com/practice/9be0172896bd43948f8a32fb954e1be1
class Solution { public: void Insert(int num) { if (minHeap.size()<maxHeap.size()) { maxHeap.insert(num); minHeap.insert(*maxHeap.begin()); maxHeap.erase(maxHeap.begin()); }else{ minHeap.insert(num); maxHeap.insert(*minHeap.begin()); minHeap.erase(minHeap.begin()); } } double GetMedian() { if (minHeap.size() != maxHeap.size()) return *maxHeap.begin(); else return double(*minHeap.begin() + *maxHeap.begin()) / 2;; } multiset<int, less<>> minHeap; multiset<int, greater<>> maxHeap; };