news 2026/4/17 17:00:45

hot100-51搜索二维矩阵

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
hot100-51搜索二维矩阵

一、题目

m×n的矩阵,每行中的整数从左到右递增排列,每行第一个整数大于前一行的最后一个整数。

给定矩阵和target,如果target在矩阵中,返回true,否则返回false。

二、思路

1、这个题目和 搜索二维矩阵 II 做法可以相同,从右上角开始搜索。如果当前值大于 target→ 向左走(排除这一列);如果当前值小于 target→ 向下走(排除这一行);如果相等 → 找到了!

2、这个题目的特性是,每行的第一个元素 > 上一行的最后一个怨怒是,说明所有行是严格递增拼接的,使用上面的解法时间复杂度是O(m+n),如果使用二分查找时间复杂度是O(log(mn))。

展开为一个一维数组,总长度m x n,在[0,N-1]范围内进行二分查找。对于任意一维索引mid,转换为二维坐标,行号:row=mid/n,列号:col=mid%n。比较matrix[m][n]与target,调整左右边界。

int row = mid / n; // 整除 → 得到“完整行数”

int col = mid % n; // 取余 → 得到“在该行中的偏移”

三、代码

class Solution { public boolean searchMatrix(int[][] matrix, int target) { int m = matrix.length-1,n = matrix[0].length-1; int row = 0, col = n; while(row <= m && col >= 0){ if(matrix[row][col] == target){ return true; }else if(matrix[row][col] > target){ col--; }else{ row++; } } return false; } }

做法二

class Solution { public boolean searchMatrix(int[][] matrix, int target) { int m = matrix.length,n = matrix[0].length; int left=0,right = m*n -1; while(left <= right){ int mid = left + (right - left) /2; int row = mid / n; int col = mid % n; if(matrix[row][col] == target){ return true; }else if(matrix[row][col] < target){ left = mid + 1; }else{ right = mid - 1; } } return false; } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 8:36:21

UI-TARS桌面智能助手终极指南:彻底告别重复性GUI操作

你是否曾在无尽的点击和拖拽中消耗宝贵的工作时间&#xff1f;是否幻想过有一个能理解你意图的智能助手&#xff0c;自动完成那些繁琐的界面操作&#xff1f;UI-TARS桌面应用正是这样一个革命性的解决方案&#xff0c;它将自然语言理解与GUI自动化完美结合&#xff0c;为你开启…

作者头像 李华
网站建设 2026/4/18 10:08:27

22、搜索引擎排名相关性与超越搜索的探索

搜索引擎排名相关性与超越搜索的探索 在当今数字化时代,搜索引擎在我们的网络生活中扮演着至关重要的角色。我们每天都会使用搜索引擎来查找各种信息,如知识资料、娱乐内容、商品交易等。然而,对于搜索引擎的研究不仅仅局限于搜索本身,还涉及到排名相关性的测量以及超越传…

作者头像 李华
网站建设 2026/4/18 8:18:44

原神智能助手终极指南:免费开源的胡桃工具箱完整使用教程

原神智能助手终极指南&#xff1a;免费开源的胡桃工具箱完整使用教程 【免费下载链接】Snap.Hutao 实用的开源多功能原神工具箱 &#x1f9f0; / Multifunctional Open-Source Genshin Impact Toolkit &#x1f9f0; 项目地址: https://gitcode.com/GitHub_Trending/sn/Snap.…

作者头像 李华
网站建设 2026/4/18 7:54:14

Xplist终极指南:跨平台全功能plist编辑器完全解析

Xplist终极指南&#xff1a;跨平台全功能plist编辑器完全解析 【免费下载链接】Xplist Cross-platform Plist Editor 项目地址: https://gitcode.com/gh_mirrors/xp/Xplist 还在为不同系统间的plist文件编辑而烦恼吗&#xff1f;Xplist作为一款轻量级、开源、全功能的跨…

作者头像 李华
网站建设 2026/4/18 11:05:49

I2C工业传感器通信基础:新手教程(零基础入门)

手把手带你玩转工业传感器通信&#xff1a;从零搞懂 I2C你有没有遇到过这样的情况&#xff1f;手头有个温湿度传感器&#xff0c;开发板也准备好了&#xff0c;结果连上之后串口就是没数据。检查接线没问题、代码看着也没错——最后发现&#xff0c;原来是I2C 地址写错了。这在…

作者头像 李华