/**
* 剑指 Offer 04. 二维数组中的查找
* https://leetcode.cn/problems/er-wei-shu-zu-zhong-de-cha-zhao-lcof/
* 思路:从右上角或左下角开始查找,每次都能排除一行或一列
* */
public class Solution {
public boolean findNumberIn2DArray(int[][] matrix, int target) {
if (matrix.length == 0 || matrix[0].length == 0) {
return false;
}
int rows = matrix.length;
int cols = matrix[0].length;
int row = 0;
int col = cols - 1;
while (row >= 0 && row < rows && col >= 0 && col < cols) {
if (target > matrix[row][col]) {
row++;
} else if (target < matrix[row][col]) {
col--;
} else {
return true;
}
}
return false;
}
}