面试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
相关推荐
scott19851211 小时前
NVIDIA GPU内部结构:高性能矩阵乘法内核剖析
线性代数·矩阵·gpu·nvidia·cuda
AI科技星15 小时前
能量绝对性与几何本源:统一场论能量方程的第一性原理推导、验证与范式革命
服务器·人工智能·科技·线性代数·算法·机器学习·生活
sunfove16 小时前
上帝的乐谱:从线性代数视角重构傅里叶变换 (FT) 的数学表达式
线性代数·机器学习·重构
victory04312 天前
pytorch 矩阵乘法和实际存储形状的差异
人工智能·pytorch·矩阵
AI科技星2 天前
引力与电磁的动力学耦合:变化磁场产生引力场与电场方程的第一性原理推导、验证与统一性意义
服务器·人工智能·科技·线性代数·算法·机器学习·生活
闻缺陷则喜何志丹2 天前
【C++动态规划 状压dp】1879. 两个数组最小的异或值之和|2145
c++·算法·动态规划·力扣·数组·最小·动态规范
todoitbo2 天前
从零搭建鲲鹏 HPC 环境:从朴素矩阵乘法到高性能实现
线性代数·矩阵·鲲鹏·昇腾
lingzhilab2 天前
零知IDE——基于STMF103RBT6结合PAJ7620U2手势控制192位WS2812 RGB立方体矩阵
c++·stm32·矩阵
你要飞2 天前
Part 2 矩阵
笔记·线性代数·考研·矩阵
一条大祥脚2 天前
26.1.2 两个数的数位dp 分段快速幂 dp预处理矩阵系数
线性代数·矩阵