public boolean findNumberIn2DArray(int[][] matrix, int target) { //官方 for (int i = 0; i < matrix.length; i++) { int left = 0; int right = matrix[0].length-1; while (left<=right) { int middle = (left + right) / 2; if (target == matrix[i][middle]) { return true; } if (target > matrix[i][middle]) { left = middle + 1; } else { right = middle - 1; } } } return false; }//大佬 int i = matrix.length - 1, j = 0; while(i >= 0 && j < matrix[0].length) { if(matrix[i][j] > target) i--; else if(matrix[i][j] < target) j++; else return true; } return false;