set库
https://docs.microsoft.com/en-us/cpp/standard-library
#include <set:
set<int s
vector封装数组
list封装了链表
map和set封装了二叉树等。
insert(key_value)
inset(first,second) :将定位器first到second之间的元素插入到set中void.
insert({x,y})插入坐标
begin() 返回set容器的第一个元素地址
end() 返回位于set容器最后一个元素之后的一个迭代器
clear()
empty()
max_size()
size()
rbegin
rend()
count() 一个键值在set只可能出现0或1次->检查是否出现
erase() 删除定位器iterator指向的值,(first,second)之间的值,以及某个值
find() :寻找某个值的位置
algorithm算法库:https://www.cnblogs.com/ylaoda/p/11412081.html
vector:中最常用的容器,不论数据是一些int,char还是自定义的class
迭代器:数组的指针就可以看作一种迭代器,迭代器一般支持解引用(operator*())、自加(operator++())、相等(operator==())等操作
pair 部分算法会有两个返回值,pair有两个成员first和second,用来将两个值进行打包返回
查找
返回位置/次数
find(beg, end, val)
find_if(beg, end, unaryPred)
find_if_not(beg, end, unaryPred)
count(beg, end, val)
count_if(beg, end, unaryPred)
unaryPred:一元谓词。可填函数,表示符合函数为true的值
返回bool
all_of(beg, end, unaryPred)
any_of(beg, end, unaryPred)
none_of(beg, end, unaryPred)
相邻重复元素
adjacent_find(beg, end)
adjacent_find(beg, end, binaryPred)
相等元素
search_n(beg, end, cnt, val)
search_n(beg, end, cnt, val, binaryPred)
子序列的位置
search(beg1, end1, beg2, end2)
search(beg1, end1, beg2, end2, binaryPred)
find_end(beg1, end1, beg2, end2)
find_end(beg1, end1, beg2, end2, binaryPred)