240 搜索二维矩阵

题目

编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性:

每行的元素从左到右升序排列。

每列的元素从上到下升序排列。

示例 1:

输入: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

示例 2:

输入: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 = 20

输出:false

思路

观察发现矩阵的右上角的一行,从左到右是递增的,从上到下是递增,于是可以根据右上角的值跟target对比来移动row或者col来找target的值。

代码

cpp 复制代码
class Solution {
public:
    bool searchMatrix(vector<vector<int>>& matrix, int target) {
        // 看矩阵右上角的元素即可,如果右上角的元素大了,就缩小col,反正缩小row
        int row=0,col=matrix[0].size()-1;
        while(row<matrix.size()&& col>=0){
            if(matrix[row][col]==target){
                return true;
            }
            else if(matrix[row][col]<target){
                row++;
            }
            else{
                col--;
            }
        }
        return false;
    }
};

感谢 感谢华南溜达虎 力扣hot 100

相关推荐
LayZhangStrive3 小时前
线性代数 - 第1章 行列式
人工智能·线性代数·机器学习
CreBee8 小时前
CreBee功能大全:新媒体矩阵运营有哪些能力?
矩阵·新媒体运营·媒体
爱吃提升19 小时前
MATLAB矩阵运算完全指南:从生成到索引操作
数据结构·matlab·矩阵
天天有money1 天前
API中转站在社媒矩阵里的价值:多平台文案如何统一改写
gpt·线性代数·ai·chatgpt·矩阵
哈德森hh1 天前
Twitter矩阵号怎么搭建?如何通过矩阵运营提升引流效果?
矩阵·twitter
小小帅呀1 天前
CUDA编程实战09:CUDA Graph 实战——降低重复 Kernel 与流水线提交开销
c++·人工智能·矩阵
良木林1 天前
矩阵 - LeetCode hot 100
线性代数·算法·leetcode·矩阵
小小帅呀1 天前
CUDA编程实战06:矩阵乘法优化——从朴素 GEMM 到共享内存分块
线性代数·矩阵
TKcloudmaster_H1 天前
规避风控稳运营!TK云大师定制脚本赋能TikTok矩阵规模化运营
大数据·人工智能·矩阵·自动化·新媒体运营·流量运营
cxr8281 天前
第3章 技术端——弹性矩阵与破格协议
线性代数·矩阵