class Solution {
public:
int kthSmallest(vector<vector<int>>& matrix, int k) {
priority_queue<int, vector<int>> q;
for(int i=0;i<matrix.size();i++)
{
for(int j=0;j<matrix[i].size();j++)
{
q.push(matrix[i][j]);
if(q.size()>k)
{
q.pop();
}
}
}
return q.top();
}
};
LeetCode:378. 有序矩阵中第K小的元素
本文介绍了一种使用优先队列(堆)在二维矩阵中寻找第K小元素的算法实现。通过遍历矩阵并将元素按顺序存入优先队列,确保队列大小为K,从而在遍历结束后队列顶部元素即为所求。此方法适用于已排序矩阵,能高效地解决此类问题。

被折叠的 条评论
为什么被折叠?



