题目描述
思路:Top-K问题 + 大顶堆
使用大顶堆求第K小的元素。
方法一:
class Solution {
public int kthSmallest(int[][] matrix, int k) {
// 1. 使用大顶堆
PriorityQueue<Integer> heap = new PriorityQueue<>((e1, e2) -> e2 - e1);
for (int i = 0; i < matrix.length; i ++) {
for (int j = 0; j < matrix[i].length; j ++) {
heap.add(matrix[i][j]);
if (heap.size() > k) {
heap.remove();
}
}
}
return heap.peek();
}
}
标签:大顶,matrix,int,LeetCode378,矩阵,heap,LeetCode,e2
From: https://www.cnblogs.com/keyongkang/p/17908867.html