240. 搜索二维矩阵 II

复制代码
https://leetcode.cn/problems/search-a-2d-matrix-ii/description/?envType=study-plan-v2&envId=top-100-liked
复制代码
首先矩阵本身具有一定的规律性,我们想要快速搜索肯定要利用,快速搜索的本质其实还是减少可能的匹配方案也就是减少分支,我们如果从(0,0)点开始搜索我们无论是往右还是往下走都是变大的,这样显然是会增加分支的,比如eg1:(0,0) = 1, target = 5,我们往右往下都可以,所以我们就需要改变开始点,一条路增大一条路减小这就满足我们的约定,右上点或左下点都可以。
java 复制代码
public class Solution {
    public boolean searchMatrix(int[][] matrix, int target) {
        int m = matrix.length, n = matrix[0].length;
        int curX = 0, curY = n - 1;
        while(curX < m && curY >= 0) {
            if(matrix[curX][curY] == target) {
                return true;
            }
            if(matrix[curX][curY] < target) curX++;
            else    curY--;
        }
        return false;
    }
}
相关推荐
Jerry2 小时前
LeetCode 347. 前 K 个高频元素
算法
Young Doro2 小时前
SAC 算法
线性代数·算法·机器学习
罗超驿2 小时前
2.算法效率的核心密码:时间复杂度和空间复杂度详解
java·数据结构·算法
:-)3 小时前
算法-堆排序
数据结构·算法·排序算法
栈溢出了3 小时前
Redis 分片集群与哈希槽笔记
java·redis·笔记·spring
遨游DATA3 小时前
Spring Boot 启动失败排查:如何区分多 Bean 冲突与清理阶段异常
java·spring boot·后端
星马梦缘3 小时前
算法设计 期末复习笔记
算法·动态规划·二分图·最小生成树·线性规划·最大流
鱼儿也有烦恼4 小时前
快速学完 LeetCode top 1~50
leetcode·algorithm
wabs6664 小时前
关于单调栈【力扣739.每日温度的思考】
java·开发语言
鱼儿也有烦恼4 小时前
题型归纳与重要模版
算法