vector:(动态数组)
1、c.size()
2、c.max_size
3、c.capacity()
4、c.resize(n):扩大容量为n
5、c.assign(n,e):将元素e的n个拷贝赋值给c
6、c1.swap(c2)同swap(c1,c2):交换c1,c2中元素
7、front():返回第一个元素
8、back():返回最后一个元素
9、begin():返回一个迭代器,指向第一个元素
10、begin():返回一个迭代器,指向最后一个元素之后
list:(链表:指针,在内存中不连续)
- c.unique:移除重复元素,只留下一个
- c.unique(op):移除使op()结果为true的重复元素
- c1.splice(pos,c2):将c2内的所有元素转移到c1的迭代器pos之前
- c1.splice(pos,c2,c2pos):将c2内c2pos所指元素转移到c1内的pos之前
- c1.splice(pos,c2,c2beg,c2end):将c2内[c2beg;c2end]区间内所有元素转移到c2的pos之前
- c.sort()以operator<:为准则对所有元素排序
- c.sort(op):以op为准则对所有元素排序
- c1.merge(c2):假设c1和c2都已排序,将c2全部元素转移到c1并保证合并后list仍为已排序
- c.reverse():将所有元素反序
stack:(栈:一端封闭)
(后进先出(LIFO))
– #include <stack>
- empty() -- 返回bool型,表示栈内是否为空 (s.empty() )
- size() -- 返回栈内元素个数 (s.size() )
- push(value)-将元素压栈
- top()-返回栈顶元素,但不移除
- pop()-从栈中移除栈顶元素,但不返回
deque:(也是一个动态的数组)
,不过两端都可以添加元素,不
过向中间添加元素时耗时比较多,因为要移动元素。用法语vector类似。
– #include<deque>
集合容器:set
使用时注意包含头文件<set> std::set and std::multiset associative containers
s.begin() 返回set容器的第一个元素s.end() 返回set容器的最后一个元素
s.clear() 删除set容器中的所有的元素
s.empty() 判断set容器是否为空
s.count(i) 返回集合中i的个数
s.insert() 插入一个元素s.erase() 删除一个元素
s.size() 返回当前set容器中的元素个数