LeetCode-240. 搜索二维矩阵 II

编写一个高效的算法来搜索 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;
    }
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性: 每行...
    小白学编程阅读 5,773评论 0 1
  • 效果图: Github链接:https://github.com/boycy815/PinchImageView ...
    CQ_TYL阅读 6,736评论 0 0
  • 手势图片控件 PinchImageView 点击图片框架 photoView packagecom.example...
    Ztufu阅读 4,095评论 0 1
  • 乔布斯说他会把每一天当作生命中的最后一天来对待,然后列出最想做的10件事,这样才会让他的人生不留遗憾。其实我想这也...
    蒙山樵阅读 1,396评论 0 0
  • 简单记录一下学习过程 记得之前SpringMVC的时候,一大堆XML配置搞得人头大,而现在SpringBoot这种...
    Andy周阅读 4,410评论 0 0

友情链接更多精彩内容