240.搜索二维矩阵Ⅱ

纯暴力有点太唐了,不过竟然能过;还有行和列的表示我一直搞反了。。。

java 复制代码
class Solution {
    public boolean searchMatrix(int[][] matrix, int target) {
        
        for(int i = 0 ;i<matrix.length;i++){
            for(int j = 0 ;j<matrix[0].length;j++){
                if(matrix[i][j]==target) return true;
            }
        }
        return false;
    }
}

我第一时间想到了二分,但对行和列同时二分不会写,光对行的话nlogm的复杂度也不是很优化

然后看题解看到一种天才的想法,和二分一样都是利用递增的性质,不过二维递增可以用更好用的性质,这里背板子就行了(这是不是对行和列同时二分的特殊形式呢

java 复制代码
class Solution {
    public boolean searchMatrix(int[][] matrix, int target) {
        int x = 0;int y = matrix[0].length-1;
        while(x<matrix.length&&y>=0){
            if(matrix[x][y]==target) return true;
            else if(matrix[x][y]>target) y--;
            else x++;
        }
        return false;
    }
}
相关推荐
想唱rap26 分钟前
应用层协议与序列化
linux·运维·服务器·网络·数据结构·c++·算法
重生之我是Java开发战士32 分钟前
【笔试强训】Week3:重排字符串,分组,DNA序列
算法
We་ct33 分钟前
LeetCode 97. 交错字符串:动态规划详解
前端·算法·leetcode·typescript·动态规划
热心网友俣先生38 分钟前
2026年第二十三届五一数学建模竞赛B题四问参考答案+多算法对比
算法·数学建模
无敌昊哥战神38 分钟前
【LeetCode 37】解数独 (Sudoku Solver) —— 回溯法详解 (Python/C/C++)
c语言·c++·python·算法·leetcode
风筝在晴天搁浅44 分钟前
LeetCode 162.寻找峰值
算法·leetcode
itzixiao1 小时前
L1-067 洛希极限(10分)[java][python]
java·开发语言·算法
jinyishu_1 小时前
链表经典OJ题
c语言·数据结构·算法·链表
葫三生1 小时前
三生原理文章被AtomGit‌开源社区收录的意义探析?
人工智能·深度学习·神经网络·算法·搜索引擎·开源·transformer
AI进化营-智能译站1 小时前
ROS2 C++开发系列15-模板实现通用算法|宏定义ROS2调试开关|一次编码适配多平台
java·c++·算法·ai