0.一些东东
vector < type > :: iterator it;
for (it = a.begin(); it != a.end(); it++) {
printf("%d", *it);
1.排序和检索
函数名称 | 用法 |
---|
sort(begin, end, cmp) | 将数组begin -end 排序cmp 为排序比较函数 |
lower_bound(begin, end, x) | 在已经排序的数组begin -end 中找x 返回指针 |
2.不定长数组:vector
个人习惯:向量
函数名称 | 功能 |
---|
push_back | 在数组的最后添加一个数据 |
pop_back | 去掉数组的最后一个数据 |
at | 得到编号位置的数据 |
begin | 得到数组头的指针 |
end | 得到数组的最后一个单元+1的指针 |
front | 得到数组头的引用 |
back | 得到数组的最后一个单元的引用 |
max_size | 得到vector最大可以是多大 |
capacity | 当前vector分配的大小 |
size | 当前使用数据的大小 |
resize | 改变当前使用数据的大小,如果它比当前使用的大,者填充默认值 |
reserve | 改变当前vecotr所分配空间的大小 |
erase | 删除指针指向的数据项 |
clear | 清空当前的vector |
rbegin | 将vector反转后的开始指针返回(其实就是原来的end-1) |
rend | 将vector反转构的结束指针返回(其实就是原来的begin-1) |
empty | 判断vector是否为空 |
swap | 与另一个vector交换数据 |
3.集合 set
提示:set要用有 <
函数名称 | 功能 |
---|
begin() | 返回set容器的第一个迭代器 |
end() | 返回set容器的最后一个迭代器 |
clear() | 删除set容器中的所有的元素 |
empty() | 判断set容器是否为空 |
max_size() | 返回set容器可能包含的元素最大个数 |
size() | 返回当前set容器中的元素个数 |
rbegin() | 返回的值和end()相同 |
rend() | 返回的值和rbegin()相同 |
4.映射 map
函数名称 | 功能 |
---|
size() | 计算元素个数 |
empty() | 判断是否为空,空返回 true |
clear() | 清空容器 |
erase() | 删除元素 |
find() | 查找元素 |
insert() | 插入元素 |
count() | 计算指定元素出现的次数 |
begin() | 返回迭代器头部 |
end() | 返回迭代器尾部 |
swap() | 交换两个map容器,类型需要相同 |
max_size() | 容纳的最大元素个数 |
rbegin() | 指向map尾部的逆向迭代器 |
rend() | 指向map头部的逆向迭代器 |
lower_bound() | 返回键值大于等于指定元素的第一个位置 |
upper_bound() | 返回键值大于指定元素的第一个位置 |
equal_range() | 返回等于指定元素的区间 |