leetcode 240. 搜索二维矩阵 II

题目如下

数据范围

示例

复制代码
这道题可以从左下角开始搜索,我们令开始的地址为(x,y)由于矩阵的特性当m(x,y)
等于目标时自然直接返回,当大于目标时我们不可能向右边搜索因为向右是递增只能向上走
即x--,否则只能向右走因为所在这一列的最大值都小于目标了。
注意:当xy越界的时候必然找不到

通过代码

cpp 复制代码
class Solution {
public:
    bool searchMatrix(vector<vector<int>>& matrix, int target) {
        int n = matrix.size();
        int m = matrix[0].size();
        int x = n - 1,y = 0;
        while(true){
            if(x < 0 || x >= n || y < 0 || y >= m){
                return false;
            }
            if(matrix[x][y] == target)return true;
            if(matrix[x][y] > target)x--;
            else y++;
        }
        return true;
    }
};
相关推荐
摘星编程4 分钟前
深入浅出 Tokio 源码:掌握 Rust 异步编程的底层逻辑
网络·算法·rust·系统编程·tokio
前端世界11 分钟前
从零实现一个可加减的Matrix矩阵类:支持索引、相等判断与实际场景应用
线性代数·矩阵
艾莉丝努力练剑13 分钟前
【C++:继承】面向对象编程精要:C++继承机制深度解析与最佳实践
开发语言·c++·人工智能·继承·c++进阶
泡沫冰@14 分钟前
数据结构(9)
数据结构
penguin_bark15 分钟前
C++ 异步编程(future、promise、packaged_task、async)
java·开发语言·c++
Hard_Liquor29 分钟前
Datawhale秋训营-“大运河杯”数据开发应用创新大赛
人工智能·深度学习·算法
liu****31 分钟前
笔试强训(八)
开发语言·算法·1024程序员节
草莓工作室34 分钟前
数据结构14:查找
数据结构·算法
nianniannnn1 小时前
Qt布局管理停靠窗口QDockWidget类
开发语言·数据库·c++·qt·qt5·qt6.3
逐步前行1 小时前
C数据结构--线性表(顺序表|单链表|双向链表)
c语言·数据结构·链表