703. Kth Largest Element in a Stream
JAVA
class KthLargest {
private PriorityQueue<Integer> q;
private int size;
public KthLargest(int k, int[] nums) {
q = new PriorityQueue<>(k);
size = k;
for (int num : nums) {
add(num);
}
}
public int add(int val) {
q.offer(val);
if (q.size() > size) {
q.poll();
}
return q.peek();
}
}C++
class KthLargest {
public:
priority_queue<int, vector<int>, greater<int>> q;
int size;
KthLargest(int k, vector<int>& nums) {
size = k;
for (int num : nums) add(num);
}
int add(int val) {
q.push(val);
if (q.size() > size) q.pop();
return q.top();
}
};
Comments
Post a Comment