搜索二维矩阵【二分】

Problem: 74. 搜索二维矩阵

文章目录

思路 & 解题方法

可以二分一次,也可以二分两次。

复杂度

时间复杂度:

添加时间复杂度, 示例: O ( l o g n + l o g m ) O(logn + logm) O(logn+logm)

空间复杂度:

添加空间复杂度, 示例: O ( 1 ) O(1) O(1)

二分两次

python 复制代码
class Solution:
    def searchMatrix(self, matrix: List[List[int]], target: int) -> bool:
        m, n = len(matrix), len(matrix[0])
        top, but = 0, m - 1
        while top < but:
            mid = (top + but) // 2
            if matrix[mid][-1] < target:
                top = mid + 1
            elif matrix[mid][-1] >= target:
                but = mid
        if but >= 0 and but < m:
            left, right = 0, n - 1
            l = matrix[but]
            while left <= right:
                mid = (left + right) // 2
                if l[mid] > target:
                    right = mid - 1
                elif l[mid] < target:
                    left = mid + 1
                else:
                    return True
        return False

二分一次

python 复制代码
class Solution:
    def searchMatrix(self, matrix: List[List[int]], target: int) -> bool:
        m, n = len(matrix), len(matrix[0])
        for l in matrix:
            if l[-1] < target:
                continue
            else:
                left, right = 0, n - 1
                while left <= right:
                    mid = (left + right) // 2
                    if l[mid] < target:
                        left = mid + 1
                    elif l[mid] > target:
                        right = mid - 1
                    else:
                        return True
                break
        return False
相关推荐
程序员-King.1 天前
day122—二分查找—完成旅途的最少时间(LeetCode-2187)
算法·leetcode·二分查找·双指针
程序员-King.1 天前
day120—二分查找—统计公平数对的数目(LeetCode-2563)
算法·leetcode·二分查找·双指针
咚咚王者1 天前
人工智能之数学基础 线性代数:第一章 向量与矩阵
人工智能·线性代数·矩阵
长安er2 天前
LeetCode 34排序数组中查找元素的第一个和最后一个位置-二分查找
数据结构·算法·leetcode·二分查找·力扣
ACERT3332 天前
04矩阵理论复习-矩阵的分解
算法·矩阵
ACERT3332 天前
03矩阵理论复习-内积空间和正规矩阵
算法·矩阵
simon_skywalker2 天前
线性代数及其应用习题答案(中文版)第二章 矩阵代数 2.3 可逆矩阵的特征(2)
线性代数·矩阵
simon_skywalker2 天前
线性代数及其应用习题答案(中文版)第二章 矩阵代数 2.4 分块矩阵(1)
线性代数·矩阵
千天夜2 天前
线性代数核心概念:正定矩阵、合同矩阵与正交矩阵
线性代数·矩阵
simon_skywalker2 天前
线性代数及其应用习题答案(中文版)第二章 矩阵代数 2.2 矩阵的逆(1)
线性代数·矩阵