把二维数组展开成一维,发现随着索引增加,值增大,那么其实这就是普通的二分查找
class Solution {public boolean searchMatrix(int[][] matrix, int target) {int m=matrix.length,n=matrix[0].length;int left=0,right=m*n-1;while(left<=right){int mid=(right-left)/2+left;int row=mid/n;int col=mid%n;if(matrix[row][col]==target)return true;else if(target<matrix[row][col])right=mid-1;else left=mid+1;}return false;}
}