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;
    }
};
相关推荐
随缘而动,随遇而安2 小时前
第八十八篇 大数据中的递归算法:从俄罗斯套娃到分布式计算的奇妙之旅
大数据·数据结构·算法
孞㐑¥2 小时前
Linux之Socket 编程 UDP
linux·服务器·c++·经验分享·笔记·网络协议·udp
IT古董2 小时前
【第二章:机器学习与神经网络概述】03.类算法理论与实践-(3)决策树分类器
神经网络·算法·机器学习
Alfred king5 小时前
面试150 生命游戏
leetcode·游戏·面试·数组
水木兰亭5 小时前
数据结构之——树及树的存储
数据结构·c++·学习·算法
Jess076 小时前
插入排序的简单介绍
数据结构·算法·排序算法
老一岁6 小时前
选择排序算法详解
数据结构·算法·排序算法
CoderCodingNo6 小时前
【GESP】C++四级考试大纲知识点梳理, (7) 排序算法基本概念
开发语言·c++·排序算法
xindafu6 小时前
代码随想录算法训练营第四十二天|动态规划part9
算法·动态规划
xindafu6 小时前
代码随想录算法训练营第四十五天|动态规划part12
算法·动态规划