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>& 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;
    }
    };

从右上角开始查找

相关推荐
Tyler_TXZ31 分钟前
C++C语言之——树
c语言·c++·算法·
旖旎夜光41 分钟前
LeetCode 30:串联所有单词的子串(滑动窗口) —— 题解
数据结构·c++·算法·leetcode·滑动窗口
白狐_7981 小时前
408 数据结构|完全二叉树两道典型题:第 6 层叶结点数与叶结点总数
数据结构·算法
lucas_AI1 小时前
喂张白纸也能吐出证件号?文档 MLLM 的"关系级泄露"被测出来了
人工智能·算法·掘金技术征文
手写码匠1 小时前
华为云Flexus+DeepSeek征文|Dify 多 Agent 灰度发布实战:让每一次变更都“小步快跑、随时可回滚“
人工智能·深度学习·算法·aigc
阿部多瑞 ABU1 小时前
从0到1:用 Spring Boot 3.4 + Vue3 做一个能“智能排道次“的运动会编排系统(附核心算法)
java·spring boot·后端·算法·spring
Nil2082 小时前
leetcode 48旋转图像
算法·leetcode·职场和发展
嘟嘟07172 小时前
顺时针螺旋填充 n×n 矩阵:手撕 generateMatrix 的四个 for 循环
javascript·算法·面试
Nil2082 小时前
leetcode 206反转链表
算法·leetcode·链表
Kstheme2 小时前
大模型内部是怎么运作的?从「一个神经元」拆到「残差流」
算法