搜索二维矩阵

搜索二维矩阵

给你一个满足下述两条属性的 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

题解:

​ 将矩阵的拼接成一个升序数组即可

go 复制代码
func searchMatrix(matrix [][]int, target int) bool {
	m, n := len(matrix), len(matrix[0])
	l, r := 0, m*n-1
	for l <= r {
		// mid := (r-l)/2 + l
        mid := (l + r) / 2
		x := matrix[mid/n][mid%n]
		if x < target {
			l = mid + 1
		} else if x > target {
			r = mid - 1
		} else {
			return true
		}
	}
	return false
}
相关推荐
民乐团扒谱机10 小时前
【硬科普】位置与动量为什么是傅里叶变换对?从正则对易关系到时空弯曲,一次讲透
人工智能·线性代数·正则·量子力学·傅里叶变换·对易算符
jz_ddk11 小时前
[数学基础] 浅尝矩阵基础运算
人工智能·线性代数·ai·矩阵
AI科技星12 小时前
时空的几何动力学:基于光速螺旋运动公设的速度上限定理求导与全维度验证
人工智能·线性代数·算法·机器学习·平面
杨哥儿1 天前
探秘离散时间更新过程:固定配额下的稳态年龄分布研究
线性代数·机器学习·概率论
0 0 01 天前
【C++】矩阵翻转/n*n的矩阵旋转
c++·线性代数·算法·矩阵
0 0 02 天前
CCF-CSP 40-3 图片解码(decode)【C++】考点:矩阵翻转/旋转
开发语言·c++·矩阵
じ☆冷颜〃2 天前
随机微分层论:统一代数、拓扑与分析框架下的SPDE论述
笔记·python·学习·线性代数·拓扑学
闻缺陷则喜何志丹2 天前
【高等数学】导数与微分
c++·线性代数·算法·矩阵·概率论
AI科技星3 天前
光速为何是宇宙的终极速度极限?
人工智能·线性代数·算法·矩阵·数据挖掘
Fairy要carry3 天前
面试-PPO
线性代数