方法一:矩阵并不大,所以直接暴力一个一个查找就可以。
方法二:从左下角或者右上角开始,每次可以排除部分元素。
class Solution {
public:
bool findNumberIn2DArray(vector<vector<int>>& matrix, int target) {
if (matrix.size() == 0) return false; //放到第一行,否则matrix[0].size()会越界!
int n = matrix.size(), m = matrix[0].size();
int x = n - 1, y = 0;
while (x >= 0 && y < m){
if (target == matrix[x][y]) return true;
else if (target < matrix[x][y]) x--;
else y++;
}
return false;
}
};