package com.sitech.iot.monitor.controller;
import java.util.PriorityQueue;
public class demo {
public static int findKthLargest(int[] nums, int k) {
PriorityQueue<Integer> minQueue = new PriorityQueue<>(k);
for (int num : nums) {
if (minQueue.size() < k || num > minQueue.peek())
minQueue.offer(num);
if (minQueue.size() > k)
minQueue.poll();
}
return minQueue.peek();
}
public static void main(String[] args){
int[]a={2,55,56,34,1};
int aa=findKthLargest(a,4);
System.out.println(aa);
}
}
直接用的javaPriorityQueue实现