力扣二分总结-lowerbound

一、二分

1.475 暖气最小半径

对每个house找到大于它位置最近的暖气,和左边最近的。

使用lower_bound(heaters.begin(),heaters.end(),housesi);

在访问*it的时候,要判断it是不是end,在减1的时候要判断是不是begin。

2.29 除法实现

不能使用乘法、取模这些

是使用的是从b到2b到4b,看当前的数能不能比这个大。

二、哈希

1.884不常见的单词

lambda的使用

auto insert=\&(const string&s){

stringstream ss(s);

string word;

while(ss>>word){

++freqmove\[word);

}

};

2.380常数时间插入删除查找

使用map去存储某个数以及位置,使用vector实际的存储,每次都是交换最后一个然后pop_back

三、字符串

1.680 验证回文串2

考察的是去调用另一个函数跳过不等的。使用||

2.686重复叠加字符串匹配

考察的是多少个a能覆盖b,主要是考察对w.find(b)!=string::npos的使用

3.819 最常见的单词

考察对单词的处理

4.6 z字形变换

考察的是首先判断行数,然后逐行移动去push_back

5.17 电话号码组合

考察的是递归

相关推荐
布莱克6057 小时前
A* 算法详解:从原理到实现
开发语言·c++·算法
多弗朗皮卡丘7 小时前
C++ 智能指针
开发语言·c++·c++11·智能指针
进化中的刀盾兽7 小时前
从零实现 C++ AI 大模型接入 SDK(十):SessionManager 会话管理与多轮对话实现
c++
小成202303202657 小时前
C++~02运算符重载
开发语言·c++
郑同学的笔记8 小时前
【c++随笔30】C++ 注册回调函数
开发语言·c++
lengxuenong8 小时前
树状数组 · 信息学学习手册2-离散化与逆序对
c++·学习·算法
十二9 小时前
【洛谷题解】P1115 最大子段和(前缀和 + 维护最小前缀)
数据结构·c++·算法·蓝桥杯
cu14311 小时前
细谈IT65631的具体功能与其应用
c++·单片机·嵌入式硬件
幻智星科技11 小时前
Karatsuba与CSD优化FPGA大数乘法
c++·fpga开发·密码学
flower98032311 小时前
C++消息总线软件开发框架AI重构版
c++·设计模式·架构