Leetcode面试经典150题-74.搜索二维矩阵

解法都在代码里,不懂就留言或者私信

二分查找,比较简单

java 复制代码
class Solution {
    /**解题思路:每一行有序、每一列也有序,只是整体不是严格有序的,那我们需要找一个点,只能往两个方向走,往一个方向走是变小
    往另外一个方向走是变大,我们右两种选择:左下角的点和右上角的点
    我习惯于用右上角的点 */
    public boolean searchMatrix(int[][] matrix, int target) {
        /**就一个数比较相等不相等就完事了呗 */
        if(matrix.length == 1 && matrix[0].length == 1) {
            return matrix[0][0] == target;
        }
        int curRow = 0;
        int curCol = matrix[0].length - 1;
        /**行是变大的,列是变小的,只有这一种走法,while条件是为了避免越界*/
        while(curRow < matrix.length && curCol >= 0) {
            if(matrix[curRow][curCol] == target) {
                return true;
            } else if(matrix[curRow][curCol] < target) {
                curRow ++;
            } else {
                curCol --;
            }
        }
        /**中间没有返回true说明没找到,这里返回false作为答案 */
        return false;
    }
}
相关推荐
降临-max7 分钟前
JavaWeb企业级开发---Mybatis
java·开发语言·笔记·学习·mybatis
知乎的哥廷根数学学派9 分钟前
基于多物理约束融合与故障特征频率建模的滚动轴承智能退化趋势分析(Pytorch)
人工智能·pytorch·python·深度学习·算法·机器学习
我是一只小青蛙88814 分钟前
位图与布隆过滤器:高效数据结构解析
开发语言·c++·算法
踩坑记录24 分钟前
leetcode hot100 238.除了自身以外数组的乘积 medium
leetcode
eso198329 分钟前
白话讲述监督学习、非监督学习、强化学习
算法·ai·聚类
chen_jared30 分钟前
反对称矩阵的性质和几何意义
人工智能·算法·机器学习
好好研究32 分钟前
SpringBoot注解的作用
java·spring boot·spring
掘金安东尼37 分钟前
⏰前端周刊第 448 期(2026年1月4日-1月10日)
前端·面试·github
邹阿涛涛涛涛涛涛38 分钟前
月之暗面招聘 Android
面试·招聘
海天一色y43 分钟前
python---力扣数学部分
算法·leetcode·职场和发展