算法基础·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函数用法讲解

相关推荐
blasit2 天前
笔记:Qt C++建立子线程做一个socket TCP常连接通信
c++·qt·tcp/ip
肆忆_3 天前
# 用 5 个问题学懂 C++ 虚函数(入门级)
c++
不想写代码的星星3 天前
虚函数表:C++ 多态背后的那个男人
c++
端平入洛5 天前
delete又未完全delete
c++
端平入洛6 天前
auto有时不auto
c++
郑州光合科技余经理7 天前
代码展示:PHP搭建海外版外卖系统源码解析
java·开发语言·前端·后端·系统架构·uni-app·php
feifeigo1237 天前
matlab画图工具
开发语言·matlab
dustcell.7 天前
haproxy七层代理
java·开发语言·前端
norlan_jame7 天前
C-PHY与D-PHY差异
c语言·开发语言
琢磨先生David7 天前
Day1:基础入门·两数之和(LeetCode 1)
数据结构·算法·leetcode