class Solution {
public boolean searchMatrix(int[][] matrix, int target) {
if(matrix == null || matrix.length == 0 || matrix[0].length == 0) return false;
int r = matrix.length;
int c = matrix[0].length;
int start = 0;
int end = r * c - 1;
while(start <= end) {
int mid = start + (end - start) / 2;
int row = mid / c;
int col = mid % c;
if(matrix[row][col] == target) {
return true;
} else if(matrix[row][col] > target) {
end = mid - 1;
} else {
start = mid + 1;
}
}
return false;
}
}
Search a 2D Matrix
最新推荐文章于 2025-01-17 23:23:30 发布