当前位置: 首页 > news >正文

Leetcode刷题记录32——搜索二维矩阵 II

题源:https://leetcode.cn/problems/search-a-2d-matrix-ii/description/?envType=study-plan-v2&envId=top-100-liked

题目描述:
在这里插入图片描述
在这里插入图片描述

思路一:
💡 解题思路:利用矩阵有序特性 + 双指针法(Z 字形搜索)
由于矩阵每一行和每一列都是有序的,我们可以利用这个特性,避免暴力遍历所有元素。

✅ 核心思想:
我们从矩阵的 右上角 开始搜索:

  • 如果当前值等于 target:找到目标,返回 True
  • 如果当前值大于 target:说明这一列的下面都更大,可以直接排除 → 向左移动(col -= 1
  • 如果当前值小于 target:说明这一行的左边都更小,可以直接向下找更大的 → 向下移动(row += 1

这样我们就能像“走楼梯”一样,逐步逼近目标值。

代码如下:

class Solution(object):def searchMatrix(self, matrix, target):""":type matrix: List[List[int]]:type target: int:rtype: bool"""row = 0col = len(matrix[0]) - 1while row <= len(matrix) -1 and col >= 0:if target == matrix[row][col]:return Trueelif target > matrix[row][col]:row += 1else:col -= 1return False

执行时间如下:
在这里插入图片描述

相关文章:

  • SecureCRT 使用指南:安装、设置与高效操作
  • 判断题材持续性
  • 进程的程序替换——exec系列函数的使用
  • 深入浅出数据库规范化的三大范式
  • Redis能保证数据不丢失吗之AOF
  • Red Hat6.4环境下搭建NFS服务器
  • 30天通过软考高项-第十一天
  • 算法中的数学:质数(素数)
  • chili3d笔记11 连接yolo python http.server 跨域请求 flask
  • CRS 16 slot 设备硬件架构
  • [学成在线]23-面试题总结
  • window 系统 使用ollama + docker + deepseek R1+ Dify 搭建本地个人助手
  • GZIPOutputStream 类详解
  • GPIO引脚的上拉下拉以及转换速度到底怎么选
  • macbook install chromedriver
  • linux 中inotify与inode的关系是什么?
  • Linux系统编程--基础指令(!!详细讲解+知识拓展)
  • [人机交互]交互设计
  • 物联网mqtt和互联网http协议区别
  • 经典的 Masked + Self-supervised learning 的模型方法
  • 李公明 | 一周画记:生活就是抵抗
  • 马上评|“景区陪爬”能成为新职业吗?
  • 爱彼迎:一季度总收入约23亿美元,将拓展住宿以外的新领域
  • 抢抓消费旺季:五一假期,多地党政主官调研外贸优品展销活动
  • 华尔兹转岗与鲁比奥集权:特朗普政府人事震荡背后的深层危机
  • 十二届上海市委第六轮巡视全面进驻,巡视组联系方式公布