LC 速查

HOT 100索引 › B6 矩阵 Matrix

LC 240搜索二维矩阵 IISearch a 2D Matrix II 中等

在每行从左到右、每列从上到下都升序的矩阵中,判断 target 是否存在。

思路 从右上角出发:当前值大则左移一列,小则下移一行,每步排除一行或一列。时间 O(m+n)。

class Solution:
    def searchMatrix(self, matrix: List[List[int]],
                     target: int) -> bool:
        i, j = 0, len(matrix[0]) - 1
        while i < len(matrix) and j >= 0:
            v = matrix[i][j]
            if v == target:
                return True
            if v > target:
                j -= 1
            else:
                i += 1
        return False
← 上一题 旋转图像相交链表 下一题 →