leetcode 热题 100_搜索二维矩阵

题解一:

二叉搜索树:从矩阵右上角观察,结构类似二叉搜索树,因此可以用类似的解法来做。具体做法是双指针从右上角开始,向左下角逐步搜索,如果当前值比目标值大,则向下移动,如果当前值比目标值小,则向左移动。直到找到目标值或指针出界。

java 复制代码
class Solution {
    public boolean searchMatrix(int[][] matrix, int target) {
        int m = matrix.length;
        int n = matrix[0].length;

        for (int i = 0, j = n - 1; i < m && j >= 0; ) {
            if (matrix[i][j] > target) j--;
            else if (matrix[i][j] < target) i++;
            else if (matrix[i][j] == target) return true;
        }
        return false;
    }
}
相关推荐
汉克老师9 分钟前
GESP5级C++考试语法知识(十一、递归算法(一))
c++·算法·记忆化搜索·递归算法·递归优化
qq_1481153724 分钟前
C++网络编程(Boost.Asio)
开发语言·c++·算法
2301_8042154130 分钟前
内存映射文件高级用法
开发语言·c++·算法
爱喝白开水a1 小时前
春节后普通程序员如何“丝滑”跨行AI:不啃算法,也能拿走AI
java·人工智能·算法·spring·ai·前端框架·大模型
张辰宇-1 小时前
AcWing 5 多重背包问题 II
算法
小则又沐风a1 小时前
类和对象(C++)---上
java·c++·算法
季明洵1 小时前
动态规划及背包问题
java·数据结构·算法·动态规划·背包问题
busideyang1 小时前
函数指针类型定义笔记
c语言·笔记·stm32·单片机·算法·嵌入式
Wect1 小时前
LeetCode 215. 数组中的第K个最大元素:大根堆解法详解
前端·算法·typescript
深邃-2 小时前
数据结构-双向链表
c语言·开发语言·数据结构·c++·算法·链表·html5