给定一个 n x n 矩阵,其中每行和每列元素均按升序排序,找到矩阵中第k小的元素。
请注意,它是排序后的第k小元素,而不是第k个元素。
示例:
matrix = [ [ 1, 5, 9], [10, 11, 13], [12, 13, 15] ], k = 8, 返回 13。
class Solution {
public:
int kthSmallest(vector<vector<int>>& matrix, int k) {
if(matrix.size() < 1)
return 0;
vector<int> vec;
for(int i = 0; i < matrix.size(); i++)
for(int j = 0; j < matrix[0].size(); j++)
vec.push_back(matrix[i][j]);
sort(vec.begin(), vec.end());
if(k == 0)
return vec[k];
return vec[k-1];
}
};