首页 > 其他分享 >力扣热题100_二分查找_74_搜索二维矩阵

力扣热题100_二分查找_74_搜索二维矩阵

时间:2024-08-20 21:25:57浏览次数:9  
标签:二分 matrix 矩阵 力扣 二维 解题 100 热题 target

文章目录


题目链接

74. 搜索二维矩阵
给你一个满足下述两条属性的 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:
在这里插入图片描述
输入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 13
输出:false

解题思路

全局二分
这个方法,是我们在二维矩阵上进行二分查找,这其实相当于把二维矩阵当做一维来做,要求每一行的最后一个元素小于下一行的第一个元素。
根据 mid 求出在二维矩阵中的具体位置,然后判断 left 和 right 的移动方式。整体做法和一维数组的二分没有区别。

解题代码

class Solution:
    def searchMatrix(self, matrix: List[List[int]], target: int) -> bool:
        M, N = len(matrix), len(matrix[0])
        left, right = 0, M * N - 1
        while left <= right:
            mid = left + (right - left) // 2
            cur = matrix[mid // N][mid % N]
            if cur == target:
                return True
            elif cur < target:
                left = mid + 1
            else:
                right = mid - 1
        return False

参考资料:力扣热题100对应的题解

标签:二分,matrix,矩阵,力扣,二维,解题,100,热题,target
From: https://blog.csdn.net/weixin_42504788/article/details/141306820

相关文章

  • NoteGPT:快速掌握100本书的精华,尽在AI图书库
    无需操作,NoteGPT的AI图书库1天读完100本书的精华,阅读效率飙升!书海浩瀚,当我们打开一列书单,该从哪一本读起呢?当老师给我们阅读任务,从何处下手撰写读书笔记呢?当我们面对读不懂的书,怎么理解它呢?NoteGPT的AI图书库功能,用AI帮我们读了100本书,不需要输入任何指令,即可直接阅读该书本......
  • 零壹塔(力扣,递归,找父节点)
    https://leetcode.cn/problems/k-th-symbol-in-grammar/0/\01/\/0110/\/\/\/\01101001#include<iostream>usingnamespacestd;intsolve(i......
  • Android逆向题解-攻防世界-Ph0en1x-100
    jeb反编译apk主要代码是if那个判断,getFlag取字符串用getSecret加密,和输入字符串encrypt加密后再getSecret加密,进行比较,两边同样都是getSecret加密,那比较可以简化成this.getFlag()==this.encrypt(s)。也就是输入字符经过encrypt加密后等于getFlag的字符串即可。protec......
  • 寻访中国100家.NET中大企业 —— 第二站:苏州行
    一:事情起因在.NET圈里混了十多年,相信有不少人知道我专注于玩.NET高级调试,如今技术上的硬实力还是能够解决市面上的一些疑难杂症,但软实力却在另一个极端,如(人际交往,人情事故),所以就萌生了刻意训练的念头,便自我发起了这个活动"寻访中国100家.NET中大企业"。二:苏州站正值暑假,出行......
  • 9k star 监控系统,100% 国产,推荐了解
    前言监控系统的重要性不言而喻,国内用的最多的应该是Zabbix和Prometheus,其优缺点:Zabbix是资产管理式,监控数据存在数据库中,擅长设备监控,不擅长微服务和云原生环境的监控;推出时间较早,社区活跃度较高Prometheus是云原生环境的监控利器,支持多维度的指标数据,自研存储引擎,但是告......
  • 100行代码实现自己的RAG知识库
    背景由于日常工作需要对接各种第三方合作方,对接过程中的文档繁多、沟通不及时、问题排查繁琐以及工作具有重复性等问题愈发明显。合作方遇到对接问题需要提工单经门户网站–>产品部门接口人–>开发人员问题排查/修复–>产品部门接口人–>合作方收到回复,这种模式联调、验收......
  • 《花100块做个摸鱼小网站! 》第三篇—热搜表结构设计和热搜数据存储
    ⭐️基础链接导航⭐️☁️阿里云活动地址......
  • 【网络安全入门】学习网络安全必须知道的100 个网络基础知识_网络安全知识入门基础_网
    什么是链接?链接是指两个设备之间的连接。它包括用于一个设备能够与另一个设备通信的电缆类型和协议。2OSI参考模型的层次是什么?有7个OSI层:物理层,数据链路层,网络层,传输层,会话层,表示层和应用层。3什么是骨干网?骨干网络是集中的基础设施,旨在将不同的路由和数据......
  • 10046-1-批量为视频添加文字水印每隔几秒钟显示一次水印-视频首尾不显示水印-UI
    程序功使用环境▶适用的系统环境说明:win7以上64位win系统注意:win32位系统/mac系统需要额外定制▶使用期限:无需注册、不绑电脑、无时间限制▶如何安装:不需要安装程序功能说明▶子文件夹穿透:支持▶支持的文件格式:'.mp4','.avi','.mkv','.webm','.ts','.flv','.mov','.wmv'......
  • ECON10004: INTRODUCTORY MICROECONOMICS
    ECON10004:INTRODUCTORYMICROECONOMICSASSIGNMENT1:SEMESTER2,2024Due:Wednesday,August21,6pm•AssignmentsmustbesubmittedviatheLMSsubjectwebpage.•Remembertokeepacopyofyourassignment.•Thisassignmentwillaccountfor15%ofyour......