我个人觉得stl相较于其他算法还是很容易学的,主要主要需要学各种容器的调用和基本操作函数。
set函数(有序数据 不重复)
常用方法
set::iterator it; 迭代器
begin() 返回set容器第一个元素的迭代器
end() 返回一个指向当前set末尾元素的下一位置的器
clear() 删除set容器中的所有的元素
empty() 判断set容器是否为空
max_size() 返回set容器可能包含的元素最大个数
size() 返回当前set容器中的元素个数
rbegin() 返回的值和end()相同
rend() 返回的值和begin()相同
s.insert(x) 插入x
s.count(x) 判断x是否在队列中
s.erase(x) 删除x
s.erase(first,second) 删除定位器first和second之间的值
s.find(x) 返回给定值值得定位器,如果没找到则返回end()
lower_bound(xe) 返回第一个小于等于x的定位器
lupper_bound(key_value) 返回第一个大于等于x的定位器
vector函数 (可容纳许多类型的数据)
常用方法
a.assign(b.begin(), b.begin()+3); b为向量,将b的0~2个元素构成的向量赋给a
a.assign(4,2); 是a只含4个元素,且每个元素为2
a.back(); 返回a的最后一个元素
a.front(); 返回a的第一个元素
a[i]; 返回a的第i个元素