题目描述
解体思路
- 首先我们进来了一个二维数组
- 二维数组我们对每一层我们进行二分查找
- 找到每一层的第一个元素下标和最后一个元素下标
- 每一层进行二分搜索 找到了返回true
- 没找到返回false
解体步骤
class Solution {
public:
bool searchMatrix(vector<vector<int>>& matrix, int target) {
int m=matrix.size();
int n=matrix[0].size();
for(int i=0;i<m;i++){
int l=0,r=n-1;
while(l<=r){
int mid=(l+r)>>1;
if(target>matrix[i][mid]){
l=mid+1;
}else if(target<matrix[i][mid]){
r=mid-1;
}else{
return true;
}
}
}
return false;
}
};