算法基础·C++常用操作

lower_bound:二分查找

  • 查找原则是a[mid] > = target的左边界,也就第一个大于等于target的数,返回是对应的内存地址
  • 注意:需要减去起始地址得到下标idx

离散化:获得新下标用法:idx = lower_bound(a.begin()+1,a.begin()+len+1,a[i])-a

教程:C++ lower_bound()函数用法详解

unique:去重函数

  • 已经排序 的数组a进行元素去重处理,左闭右开 ,返回的是去重后的数组最后一个元素的下一个元素的迭代器或者内存地址。

前置条件:数组必须有序。

获得去重后的数组长度用法:newlen = unique(a+1,a+alen+1)-a-1

教程:unique函数用法讲解

相关推荐
CDwenhuohuo几秒前
前端文件预览
开发语言·前端·javascript
charlie1145141916 分钟前
通用GUI编程技术——图形渲染实战(三十八)——顶点缓冲与输入布局:GPU的第一个三角形
开发语言·c++·学习·图形渲染·win32
IT猿手8 分钟前
SCI一区:章鱼优化算法(Octopus Optimization Algorithm, OOA)求解23个测试函数,出图丰富,提供完整MATLAB代码
开发语言·算法·matlab
程序员JerrySUN8 分钟前
Jetson边缘嵌入式实战课程第二讲:JetPack 和 SDK Manager 是什么
c语言·开发语言·网络·udp·音视频
不知名的老吴9 分钟前
后端知识点:Python处理加权点赞
开发语言·python
用户8055336980312 分钟前
现代Qt开发教程(新手篇)1.10——进程
c++·qt
忡黑梨12 分钟前
eNSP_从直连到BGP全网互通
c语言·网络·数据结构·python·算法·网络安全
海参崴-18 分钟前
C++ STL篇 AVL树的模拟实现
开发语言·c++
汉克老师19 分钟前
GESP2025年6月认证C++五级( 第二部分判断题(1-10))
c++·贪心算法·分治算法·线性筛法·gesp5级·gesp五级
Cyber4K26 分钟前
【Python专项】基础语法(2)
开发语言·python