【leetcode100】搜索二维矩阵

1、题目描述

给你一个满足下述两条属性的 m x n 整数矩阵:

  • 每行中的整数从左到右按非严格递增顺序排列。
  • 每行的第一个整数大于前一行的最后一个整数。

给你一个整数 target ,如果 target 在矩阵中,返回 true ;否则,返回 false

示例 1:

复制代码
输入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 3
输出:true

2、初始思路

2.1 思路

先找到正确的行,再使用二分法在该行进行查找。

2.2 代码

复制代码
class Solution:
    def searchMatrix(self, matrix: List[List[int]], target: int) -> bool:
        m, n = len(matrix)-1, len(matrix[0])-1
        #print(m,n)
        i = 0
        while i < m:
            cur = matrix[i][n]
            if cur < target:
                i += 1
            else:
                break
        l, r= 0, n
        while(l <= r):
            mid = (l+r)//2
            if matrix[i][mid] < target:
                l = mid + 1
            elif matrix[i][mid] > target:
                r = mid - 1
            else:
                return True        
        return False
相关推荐
liuweidong08023 分钟前
【Pandas】pandas Series plot.area
python·信息可视化·pandas
孙同学_4 分钟前
【动态规划篇】91. 解码方法
算法·leetcode·动态规划
老大白菜16 分钟前
Python八字排盘系统实现分析
开发语言·python
西猫雷婶1 小时前
python学智能算法(八)|决策树
开发语言·python·决策树
科研小白_1 小时前
2025年优化算法:龙卷风优化算法(Tornado optimizer with Coriolis force)
python·算法·tornado
wolf犭良1 小时前
9、Python collections模块高效数据结构
开发语言·数据结构·python
Pocker_Spades_A1 小时前
Python刷题:流程控制(上)
开发语言·python
Pocker_Spades_A1 小时前
深度洞察:DeepSeek 驱动金融行业智能化转型变革
数据库·python·oracle·金融·deepseek
记得早睡~1 小时前
leetcode501-二叉搜索树中的众数
javascript·数据结构·算法·leetcode
仙人掌_lz2 小时前
RAG各类方法python源码解读与实践:RAG技术综合评测【3万字长文】
开发语言·人工智能·python·深度学习·ai·jupyter·rag