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

LeeCode74 搜索二维矩阵

 先看下题目

看到这个题我第一时间想的是二分查找,只不过跟官方不同的是,我的是外层遍历,找到可能存在target的行,然后内层二分查找,判断具体有没有target这个数。我觉得我的想法也可以实现,只不过题目要求用高效的方法求解,遍历明显不太高效。

看看官方的程序

class Solution {
public:
    bool searchMatrix(vector<vector<int>> matrix, int target) 
    {
        auto row = upper_bound(matrix.begin(), matrix.end(), target, [](const int b, const vector<int> &a)
        {
            return b < a[0];
        });
        if (row == matrix.begin()) {
            return false;
        }
        --row;
        return binary_search(row->begin(), row->end(), target);
    }
};

关于upper_bound()和binary_search(),之前也解释过了,再看看吧(10)STL算法之搜索(二)& 二分查找

还有upper_bound()的第四个参数运行的机制,上边链接里的源码里也有。参数四自定义规则里的参数一就是target,参数二是matrix外层的遍历,然后你可以在函数体内自定义比较规则。

 

 

 

相关文章:

  • (0)Nginx 功能特性
  • (2)nginx 安装、启停
  • (3)nginx 配置(nginx.conf)
  • 汇编语言学习笔记--基础知识篇
  • IAR for 430软件的简单使用
  • 430单片机时钟系统与复位系统的配置(1)
  • 430单片机时钟系统与复位系统的配置(2)
  • STM32F103芯片的一些小知识
  • RCC的一些小知识
  • stm32 SPI学习
  • SPI通信过程以及 STM32的SPI特性构架
  • 通讯的基本概念以及分类
  • STM32通用同步异步收发器(USART)
  • STM32 I2C学习
  • STM32定时器学习---基本定时器
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • CSS实用技巧干货
  • export和import的用法总结
  • javascript数组去重/查找/插入/删除
  • JavaSE小实践1:Java爬取斗图网站的所有表情包
  • Java知识点总结(JDBC-连接步骤及CRUD)
  • js正则,这点儿就够用了
  • js中forEach回调同异步问题
  • NSTimer学习笔记
  • react 代码优化(一) ——事件处理
  • Spring核心 Bean的高级装配
  • vue 个人积累(使用工具,组件)
  • 关于Flux,Vuex,Redux的思考
  • 关于List、List?、ListObject的区别
  • 每天10道Java面试题,跟我走,offer有!
  • 模型微调
  • 普通函数和构造函数的区别
  • 我感觉这是史上最牛的防sql注入方法类
  • 新书推荐|Windows黑客编程技术详解
  • 字符串匹配基础上
  • kubernetes资源对象--ingress
  • Spring第一个helloWorld
  • 湖北分布式智能数据采集方法有哪些?
  • ​​快速排序(四)——挖坑法,前后指针法与非递归
  • ​LeetCode解法汇总1410. HTML 实体解析器
  • ### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLTr
  • #define用法
  • #NOIP 2014#day.2 T1 无限网络发射器选址
  • #WEB前端(HTML属性)
  • (16)Reactor的测试——响应式Spring的道法术器
  • (42)STM32——LCD显示屏实验笔记
  • (8)Linux使用C语言读取proc/stat等cpu使用数据
  • (C语言)输入一个序列,判断是否为奇偶交叉数
  • (Redis使用系列) Springboot 使用redis实现接口Api限流 十
  • (附源码)ssm智慧社区管理系统 毕业设计 101635
  • (附源码)计算机毕业设计SSM基于健身房管理系统
  • (幽默漫画)有个程序员老公,是怎样的体验?
  • (原)记一次CentOS7 磁盘空间大小异常的解决过程
  • (转) RFS+AutoItLibrary测试web对话框
  • .bat批处理(十):从路径字符串中截取盘符、文件名、后缀名等信息