deque
容器为双端可操作队列,非常类似于向量
vector
数据结构。
仅仅是双端队列可以在容器的两端插入以及删除对应的数据元素,并且提供的操作效率较高。
双端队列
deque
同样也提供了随机访问功能,用户也可以根据需要动态地改变队列的大小。
引用头文件:
#include<deque>
初始化方法:
deque<int> intValue; //定义整型类型队列对象intValue
deque<string>stringValue(100); //长度为100
deque<double>doubleValue(10,200.0); //长度为10,每个元素初始化为200.0
deque
基本操作
:
接口方法名称 | 基本功能说明 |
d.assign(n,elem) | n个elem元素取代当前队列容器中元素 |
d.assign(first,end) | 迭代器first到end区间的元素取代当前队列中元素 |
d.at(n) | 访问当前队列n位置处的元素,并返回该元素 |
d.back() | 返回当前队列尾部元素 |
d.begin() | 返回当前队列第一个元素的迭代器 |
d.clear() | 清空当前队列中所有元素 |
d.empty() | 判断当前队列是否为空,如果为空则返回true |
d.end() | 返回当前队列中最后一个元素的迭代器 |
d.erase(first,end) | 删除当前队列迭代器first到end所指区间的元数据 |
d.erase(iter) | 删除当前队列迭代器iter所指位置元素 |
d.front() | 返回当前队列起始位置元素 |
d.insert(iter,elem) | 当前队列迭代器iter位置处插入元素elem |
d.insert(iter,first,end) | 将迭代器first到end区间的元素插入到当前队列iter所指位置 |
d.insert(iter,num,elem) | 将num个elem元素插入到当前队列iter所指位置处 |
d.max_size() | 返回当前队列容器当前最大容量 |
d.pop_back() | 删除当前队列中最后一个元素 |
d.pop_front() | 删除当前队列中第一个元素 |
d.push_back(elem) | 当前队列的尾部添加元素elem |
d.push_front(elem) | 当前队列的头部添加元素elem |
d.rbegin() | 返回当前队列反向的指向首元素的迭代器 |
d.resize(num,elem) | 将当前队列大小调整为num,并且使用元素elem初始化容器 |
d.size() | 返回当前队列的元素个数 |
d.swap(deque) | 交换当前队列与deque队列的内容 |