c++stl的deque(双端队列)

来源:互联网 发布:淘宝直通车开通条件 编辑:程序博客网 时间:2024/06/04 18:56

1. deque的初始化:

deque<int> d;  //没有任何元素

deque<int> d2(10)  //创建有10个元素的deque对象

deque<float> d(10,8.5);  //创建10float型元素的deque对象d,每个元素为8.5;

2. deque赋值:deque<int>  d;

头插法: d.push_front(10);

尾插法:d.push_back(1);

中间插入法: d.insert(d.begin()+1,8);

插入后的结果为:  10  8  1

3. size()函数:用来求deque的大小,例如:d.size()

4. clear()函数:用来清空元素

5. 访问deque元素的几种方式:

(1) 以数组的形式:

for(int i=0;i<d.size();i++)

cout<<d[i]<<" ";

(2) 以前向迭代器形式:

deque<int>::iterator it;

for(it=d.begin();it!=d.end();it++)

cout<<*it<<" ";

(3) 以逆向迭代器形式:

deque<int>::reverse_iterator rit;

for(rit=d.rbegin();rit!=d.rend();rit++)

cout<<*rit<<" ";

(4) 从头部出队,从而删除元素:

d.pop_front();

(5) 从尾部出队,从而删除元素:

d.pop_back();

5. erase()函数从中间删除元素,其参数是迭代器的位置;例如:

d.erase(d.begin()+1);

原创粉丝点击