LeetCode hot100-240搜索二维矩阵 II

复制代码
class Solution {
public:
    bool searchMatrix(vector<vector<int>>& matrix, int target) {
        for (const auto& row: matrix) {
            auto it = lower_bound(row.begin(), row.end(), target);
            if (it != row.end() && *it == target) {
                return true;
            }
        }
        return false;
    }
};
复制代码
auto it = lower_bound(row.begin(), row.end(), target);
  • row:一个有序的 vector(如 vector<int>

  • lower_bound:二分查找算法,返回一个迭代器

  • auto:自动推导迭代器类型

  • it:指向第一个 >= target 的元素

  • 有序数组中查找第一个大于等于 target 的元素。

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

从右上角开始查找

相关推荐
IronMurphy7 小时前
【算法三十九】994. 腐烂的橘子
算法
Ares-Wang8 小时前
算法》》旅行商问题 TSP、7座桥问题 哈密顿回路 深度优先 和 宽度优先
算法·深度优先·宽度优先
Liqiuyue8 小时前
Transformer:现代AI革命背后的核心模型
人工智能·算法·机器学习
WolfGang0073218 小时前
代码随想录算法训练营 Day34 | 动态规划 part07
算法·动态规划
Kk.08029 小时前
Linux(十一)fork实例练习、文件操作示例及相关面试题目分享
linux·运维·算法
潇冉沐晴9 小时前
2026CCCC第三次模拟赛 部分题解
算法
WolfGang00732110 小时前
代码随想录算法训练营 Day32 | 动态规划 part05
算法·动态规划
碧海银沙音频科技研究院10 小时前
1-1杰理蓝牙SOC的UI配置开发方法
人工智能·深度学习·算法
啊我不会诶10 小时前
2024CCPC长春邀请赛
算法