leetcode-240. 搜索二维矩阵 II --z字搜索

240. 搜索二维矩阵 II

  • Z字搜索法,持续缩小 target 可能在的范围,从右上角进入矩阵开始搜索,左下角也是一样的,但是不能从左上角或右下角开始

  • 范围:x再大也不能超过矩阵宽度,y再小也不能小于0

  • 如果此处的数大于target,由于从左向右严格递增,则y--向左寻找更小的数

  • 如果此处的数小于target,由于从上到下严格递增,则x++向下寻找更大的数

public boolean searchMatrix(int[][] matrix, int target) {
        int m = matrix.length;
        int n = matrix[0].length;
        int x = 0;
        int y = n - 1;
        while(x < m && y >= 0){
            if(matrix[x][y] < target){
                x++;
            }else if(matrix[x][y] > target){
                y--;
            }else{
                return true;
            }
        }
        return false;
    }

 

posted on 2022-10-17 14:12  老菜农  阅读(34)  评论(0编辑  收藏  举报

导航