美文网首页
LeetCode-240. 搜索二维矩阵 II

LeetCode-240. 搜索二维矩阵 II

作者: G_dalx | 来源:发表于2019-05-01 11:17 被阅读0次

    编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性:

    每行的元素从左到右升序排列。
    每列的元素从上到下升序排列。
    

    示例:

    现有矩阵 matrix 如下:

    [
      [1,   4,  7, 11, 15],
      [2,   5,  8, 12, 19],
      [3,   6,  9, 16, 22],
      [10, 13, 14, 17, 24],
      [18, 21, 23, 26, 30]
    ]
    

    给定 target = 5,返回 true。

    给定 target = 20,返回 false。

    思路:以左下角的数为基准,小于目标值,则向右移动,大于目标值,则向上移动
    代码:

    class Solution {
        public boolean searchMatrix(int[][] matrix, int target) {
            int row = matrix.length-1;
            int col = 0;
            while (row>=0 && col<=matrix[0].length-1){
                if (matrix[row][col] == target){
                    return true;
                }else if (matrix[row][col] > target){
                    row--;
                }else{
                    col++;
                }
            }
            return false;
        }
    }
    

    相关文章

      网友评论

          本文标题:LeetCode-240. 搜索二维矩阵 II

          本文链接:https://www.haomeiwen.com/subject/ncbinqtx.html