力扣二分总结-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 电话号码组合

考察的是递归

相关推荐
ShineWinsu1 小时前
对于Redis:List类型的解析
数据库·c++·redis·链表·缓存·面试·list
小师兄吃牛肉2 小时前
C++ 与 Lua 的协程交互:从原理到实战
c++·lua·交互
YYYing.2 小时前
【设计模式系列 (八) 】组合模式
c++·后端·设计模式·组合模式·c/c++
艾莉丝努力练剑2 小时前
【QT】系统相关:多线程QThread基础
开发语言·网络·c++·qt·学习·大模型
l1t2 小时前
DeepSeek总结的PIVCO-Huffman编码性能优化
数据结构·c++·算法
王维同学3 小时前
ETW监控-KswordARK功能展示
c++·windows·安全
東隅已逝,桑榆非晚3 小时前
c++模板进阶
开发语言·c++·笔记·学习
左手の明天12 小时前
SLIP 协议封装与解析详解:原理、C 代码与实战案例
linux·c语言·开发语言·c++