在2个对角线出选点,可以类似于二分调整数字大小,寻找答案
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param matrix int整型vector<vector<>>
* @param target int整型
* @return bool布尔型
*/
bool searchMatrix(vector<vector<int> >& matrix, int target) {
// write code here
int n = matrix.size();
int m = matrix[0].size();
if(matrix[0][0]<target || matrix[n-1][m-1] > target) return false;
int l=0,r = m-1;
while(matrix[l][r] != target) {
if (matrix[l][r] > target) l++;
else r--;
if(l== n || r<0) return false;
}
return matrix[l][r] == target;
}
};

京公网安备 11010502036488号