题目描述
// 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵
// 具有以下特性:
// 每行的元素从左到右升序排列。
// 每列的元素从上到下升序排列。
题解
// 双指针
// 本题和【剑指offer】04. 二维数组中的查找 一模一样
// 执行用时:6 ms, 在所有 Java 提交中击败了91.24%的用户
// 内存消耗:43.7 MB, 在所有 Java 提交中击败了93.81%的用户
class Solution {
public boolean searchMatrix(int[][] matrix, int target) {
int row = matrix.length;
int col = matrix[0].length;
int i = 0;
int j = col - 1;
while (i <= row - 1 && j >= 0) {
if (matrix[i][j] > target) {
j--;
}
else if (matrix[i][j] < target) {
i++;
}
else {
return true;
}
}
return false;
}
}