面试150 搜索二维矩阵

思路1

直接遍历搜寻,逐个判断即可

python 复制代码
class Solution:
    def searchMatrix(self, matrix: List[List[int]], target: int) -> bool:
        m=len(matrix)
        n=len(matrix[0])
        for i in range(m):
            for j in range(n):
                if matrix[i][j]==target:
                    return True
        return False

思路2

Z字形搜索从矩阵的右上角(第一行最后一列)开始。若当前元素等于 target,则返回 True。如果当前元素小于 target,说明目标可能在更大的元素中,将行索引加一(向下移动);反之,若当前元素大于 target,则列索引减一(向左移动)。重复上述过程,直到找到目标或越界结束搜索。

python 复制代码
class Solution:
    def searchMatrix(self, matrix: List[List[int]], target: int) -> bool:
        m, n = len(matrix), len(matrix[0])
        
        # 从右上角开始搜索
        i, j = 0, n - 1
        
        while i < m and j >= 0:
            if matrix[i][j] == target:
                return True
            elif matrix[i][j] > target:
                j -= 1  # 向左移动
            else:
                i += 1  # 向下移动
        
        return False
相关推荐
柴猫°9 小时前
离散图扩散模型中的转移公式推导
人工智能·线性代数·机器学习
yeflx14 小时前
本质矩阵、基础矩阵和单应矩阵详解
线性代数·矩阵
AI算法沐枫16 小时前
计算机视觉需要哪些数学基础?常见问题全解析
人工智能·深度学习·线性代数·计算机视觉·自然语言处理
王_teacher1 天前
机器学习 矩阵求导 完整公式+严谨推导
人工智能·线性代数·考研·机器学习·矩阵·线性回归
做cv的小昊1 天前
【TJU】研究生应用统计学课程笔记(2)——第一章 数理统计的基本知识(1.3 统计中常用的分布族)
笔记·线性代数·数学建模·矩阵·概率论·学习方法·抽象代数
二等饼干~za8986682 天前
GEO 源码部署搭建详细操作教程(2026 最新版)
线性代数·django·开源·音视频·ai-native
_小草鱼_2 天前
【数据结构】栈和队列
数据结构·数组··队列
Pentane.2 天前
【力扣hot100】【Leetcode 54】螺旋矩阵|边界控制 算法笔记及打卡(19/100)
算法·leetcode·矩阵
博.闻广见2 天前
AI_线性代数-6.PCA降维详解
人工智能·线性代数
做cv的小昊2 天前
【TJU】研究生应用统计学课程笔记(3)——第一章 数理统计的基本知识(1.4 正态总体的样本均值和样本方差的分布、1.5 充分统计量和完备统计量)
笔记·学习·线性代数·机器学习·数学建模·概率论