算法12--topK求一个数组中第k大的数
求一个数组中第k大的值解法一:建立一个k个元素的最大堆,首先将数组中前k个元素放入堆中,此时堆顶元素为第k大的元素,后面继续遍历数组,比较堆顶元素与数组中元素值,当数组中元素小于堆顶元素时,将堆顶元素弹出,新元素入堆,这样最终堆顶元素即为第k大。可以直接利用Java中优先级队列,这里传入一个比较器来构造最大堆。public static int topK3(int[] arr, ...