【LeetCode热题100】【二分查找】搜索二维矩阵

devtools/2024/12/22 14:56:31/

题目链接:74. 搜索二维矩阵 - 力扣(LeetCode)

在一个有序二维数组里面查找元素,同【LeetCode热题100】【矩阵】搜索二维矩阵 II-CSDN博客

如果用二分查找,时间复杂度是log(mn),但是可以实现时间复杂度为O(m+n)的,从右上角开始查找,如果当前元素比目标小,说明应该在下面范围,矩阵压扁,如果当前元素比目标大,说明在左边范围,矩阵压扁,这样最多只需要遍历m+n个元素可以确定元素是否存在

class Solution {
public:bool searchMatrix(vector<vector<int> > &matrix, int target) {int x = 0, y = matrix[0].size() - 1, n = matrix.size();while (x < n && y >= 0) {if (matrix[x][y] == target)return true;if (matrix[x][y] < target)++x;else--y;}return false;}
};


http://www.ppmy.cn/devtools/2014.html

相关文章

自动化运维工具Ansible模块的介绍与使用

文章目录 第1章 ansible介绍1.什么是ansible2.为什么需要ansible3.如何学习ansible 第2章 Ansible安装部署第3章 Ansible主机清单1.什么是主机清单2.主机分组执行3.所有的主机都执行4.SSH使用密码连接并且端口号不是225.同组主机SSH端口号不一样&#xff0c;账号密码也不一样6.…

Java集合进阶——泛型

1.泛型 介绍&#xff1a; 泛型可以在编译阶段约束操作的数据类型&#xff0c;并进行检查。 应用场景&#xff1a; 如果在定义类、方法、接口的时候&#xff0c;如果类型不确定&#xff0c;就可以使用泛型。 格式&#xff1a; <数据类型> 注意&#xff1a; 泛型只支持引…

pikachu靶场第十六关——sqli数字型注入(post)(附代码审计)

Sql Inject(SQL注入)概述 在owasp发布的top10排行榜里&#xff0c;注入漏洞一直是危害排名第一的漏洞&#xff0c;其中注入漏洞里面首当其冲的就是数据库注入漏洞。一个严重的SQL注入漏洞&#xff0c;可能会直接导致一家公司破产&#xff01; SQL注入漏洞主要形成的原因是在数据…

GAN:对抗式生成网络之图片生成

对抗式生成网络(Adversarial Generative Network, AGN)这一术语在您提供的信息中并未直接出现。通常,在深度学习文献和实践中,与“对抗”和“生成”概念相结合的网络架构指的是生成式对抗网络(Generative Adversarial Networks, GANs)。GANs由Ian Goodfellow等人于2014年…

面试算法-174-二叉树的层序遍历

题目 给你二叉树的根节点 root &#xff0c;返回其节点值的 层序遍历 。 &#xff08;即逐层地&#xff0c;从左到右访问所有节点&#xff09;。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;[[3],[9,20],[15,7]] 解 class Solut…

MapReduce——数据切片与MapTask并行度决定机制

MapReduce——数据切片与MapTask并行度决定机制 MapReduce 数据切片和 Map 任务的并行度决定机制是 MapReduce 框架中两个重要的概念&#xff0c;它们直接影响作业的执行效率和性能。 1.数据切片&#xff08;Data Splits&#xff09; 数据切片是指将输入数据拆分成更小的块或片…

使用go和消息队列优化投票功能

文章目录 1、优化方案与主要实现代码1.1、原系统的技术架构1.2、新系统的技术架构1.3、查看和投票接口实现1.4、数据入库MySQL协程实现1.5、路由配置1.6、启动程序入口实现 2、压测结果2.1、设置Jmeter线程组2.2、Jmeter聚合报告结果&#xff0c;支持11240/秒吞吐量2.3、Jmeter…

vscode 配置go环境

https://www.zhihu.com/question/486786946/answer/2723663432 注意一定要安装最新版,否则不容易debug //main.go package main //说明hello.go这个文件在main这个包中import "fmt" //导入内置包&#xff0c;可以使用其中函数等func main() {fmt.Println("Hello…