java优先级队列的使用 leecode.703.数据流中的第K大元素
//设计一个找到数据流中第K大元素的类(class)。
//注意是排序后的第K大元素,不是第K个不同的元素。
class KthLargest {
private PriorityQueue<Integer> queue;
private int k = 0;
public KthLargest(int k, int[] nums) {
queue = new PriorityQueue(k);
this.k = k;
for(int i = 0; i < nums.length;i++){
add(nums[i]);
}
}
public int add(int val) {
if(queue.size() < k){
queue.offer(val);
}else{
if(queue.peek() < val){
queue.poll();
queue.offer(val);
}
}
return queue.peek();
}
}
更多精彩

