方法一
PriorityQueue
优先级队列
class Solution {
public int findKthLargest(int[] nums, int k) {
if(nums== null || nums.length==0 || k<0) return 0;
PriorityQueue<Integer>pq=new PriorityQueue<Integer>();
for (int num:nums){//遍历
pq.offer(num);//将数组中的数加入pq
if(pq.size()>k){
pq.poll();//如果超出pq的尺寸,把最小的数poll出来
}
}
return pq.peek();//返回最顶端的数
}
}
PriorityQueue的实现
方法二 Quicksort