以下内容仍在更新完善...
Vector
初始化:
vector<int> a(x); 定义x个整型元素的初始值不确定的向量
vector<int> a(x,y); 定义x个整型元素的初始值为y的向量
vector<int> a(b); 将b向量的值复制给a
vector<int> a(b.begin(),b.begin+x); 定义a值为b中第0个到第x个(共x+1个)元素
常用函数方法(部分):
a.assign(b.begin(), b.begin()+x); b为向量,将b的0~x个元素构成的向量赋给a
a.assign(x,y); 使得a只含x个值为y的元素
a.back(); 返回a的最后一个元素
a.front(); 返回a的第一个元素
a.clear(); 清空vector
a.empty(); 判断a是否为空,空则返回ture,不空则返回false
a.pop_back(); 删除a向量的最后一个元素
a.push_back(x); 在a的最后一个向量后插入一个值为x的元素
a.insert(a.begin()+x,y); 在a的第x个元素(从第0个算起)的位置插入数值y
a.insert(a.begin()+x,y,z); 在a的第x个元素(从第0个算起)的位置插入y个数,其值都为z
a.size(); 返回a中元素的个数;
a.capacity(); 返回a在内存中总共可以容纳的元素个数
a.swap(b); b为向量,将a中的元素和b中的元素交换
Stack
头文件:
#include <stack>
初始化:
stack a;
常用函数方法(部分):
s.top(); 返回栈顶元素
s.empty(); 判定是否为空,空则返回false,非空则返回true
s.pop(); 删除栈顶元素,并返回该删除值
s.push(T); 加入一个元素T到stack的栈顶
s.size(); 返回栈中元素数目
Deque
头文件:
#include <deque>
初始化:
deque<double> a; 定义了一个double型的双端队列a;
常用函数方法(部分):
a.assign(a,b) 将[a; b)区间中的数据赋值给a
a.assign(n,x) 将n个x的拷贝赋值给a
a.back() 返回容器a的最后一个元素的值。如果a为空,则该操作未定义。
a.begin() 传回迭代器中的第一个数据地址。
a.clear() 移除容器中所有数据。
a.empty() 判断容器是否为空。
a.end() 返回一个迭代器,它指向容器a的最后一个元素的下一位置。
a.erase(pos) 删除pos位置的数据,传回下一个数据的位置。
a.erase(x,y) 删除[x,y)区间的数据,传回下一个数据的位置。
a.front() 返回容器a的第一个元素的值。如果a为空,则该操作为空。
a.max_size() 返回容器a可容纳的最多元素个数。
a.pop_back() 删除最后一个数据。
a.pop_front() 删除头部数据。
a.push_back(elem) 在尾部加入一个数据。
a.push_front(elem) 在头部插入一个数据。
a.size() 返回容器中实际数据的个数。
a.swap(b) 交换容器a和b中的所有元素。
swap(a,b) 交换容器a和b中的所有元素。
List
初始化:
list<int> a; 创建空list
list<int> a(5); 创建含有5个元素的list
list<int> a(3,2); 创建含有3个元素的list
常用函数方法(部分):
a.assign() 给list赋值
a.back() 返回最后一个元素
a.begin() 返回指向第一个元素的迭代器
a.clear() 删除所有元素
a.empty() 如果list是空的则返回true
a.end() 返回末尾的迭代器
a.erase() 删除一个元素
a.front() 返回第一个元素
a.get_allocator() 返回list的配置器
a.insert() 插入一个元素到list中
a.max_size() 返回list能容纳的最大元素数量
a.pop_back() 删除最后一个元素
a.pop_front() 删除第一个元素
a.push_back() 在list的末尾添加一个元素
a.push_front() 在list的头部添加一个元素
a.size() 返回list中的元素个数
a.swap() 交换两个list