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;
    }
}
相关推荐
JAVA面经实录9178 分钟前
Java企业级工程化·终极完整版背诵手册(无遗漏、全覆盖、面试+落地通用)
java·开发语言·面试
王老师青少年编程1 小时前
csp信奥赛C++高频考点专项训练之贪心算法 --【哈夫曼贪心】:合并果子
c++·算法·贪心·csp·信奥赛·哈夫曼贪心·合并果子
叼烟扛炮1 小时前
C++第二讲:类和对象(上)
数据结构·c++·算法·类和对象·struct·实例化
天疆说2 小时前
【哈密顿力学】深入解读航天器交会最优控制中的Hamilton函数
人工智能·算法·机器学习
许彰午2 小时前
CacheSQL(二):主从复制——OpLog 环形缓冲区与故障自动恢复
java·数据库·缓存
wuweijianlove2 小时前
关于算法设计中的代价函数优化与约束求解的技术7
算法
leoufung3 小时前
LeetCode 149: Max Points on a Line - 解题思路详解
算法·leetcode·职场和发展
样例过了就是过了3 小时前
LeetCode热题100 最长公共子序列
c++·算法·leetcode·动态规划
HXDGCL3 小时前
矩形环形导轨:自动化循环线的核心运动单元解析
运维·算法·自动化
Bat U3 小时前
JavaEE|多线程初阶(七)
java·开发语言