deque

1.特点:

(1) deque(double-ended queue 双端队列);

(2) 具有分段数组、索引数组, 分段数组是存储数据的,索引数组是存储每段数组的首地址;

(3) 向两端插入元素效率较高!

(若向两端插入元素,如果两端的分段数组未满,既可插入;如果两端的分段数组已满,

则创建新的分段函数,并把分段数组的首地址存储到deque容器中即可)。

中间插入元素效率较低!

2. 创建deque对象

(1) deque<int> d1;

(2) deque<int> d2(10);

 

3. 基本操作:

(1) 元素访问:

d[i];

d.at[i];

d.front();

d.back();

d.begin();

d.end();

 

(2) 添加元素:

d.push_back();

d.push_front();

d.insert(pos,elem); //pos是vector的插入元素的位置

d.insert(pos, n, elem) //在位置pos上插入n个元素elem

d.insert(pos, begin, end);

 

(3) 删除元素:

d.pop_back();

d.pop_front();

d.erase(pos); //移除pos位置上的元素,返回下一个数据的位置

d.erase(begin, end); //移除[begin, end)区间的数据,返回下一个元素的位置

posted on 2022-03-17 21:17  蜀山菜鸟  阅读(114)  评论(0)    收藏  举报