deque双端队列
// deque 线性
#include<iostream>
#include<deque>
using namespace std;
void main()
{
deque<int> myd = {1,2,3,4,5,6};
myd.push_back(13);// 尾部插入
myd.push_front(0);// 前端插入
myd.insert(myd.begin()+3,19);// 中间插入
for(auto i : myd)
{
cout << i << endl;
}
// 逆序,反向迭代器
for(auto rb = myd.rbegin()+2,re = myd.rend();rb!=re;rb++)
{
cout << *rb << endl;
}
myd.pop_front();// 弹出头部数据
myd.pop_back();// 删除尾部数据
myd.clear();// 删除全部
for(int i = 0;i <myd.size();i++)
{
cout << myd[i] << endl;
}
// +4 可以 按照线性来访问 deque内部是线性的分块结构
for(auto ib = myd.begin()+4,ie = myd.end();ib!=ie;ib++)
{
cout << *ib << endl;
}
cin.get();
}
//------------------------------------------------------------------------
void main()
{
deque<int> myd1 = {1,2,3,4,5,6};
deque<int> myd2 = {11,22,33,44,55,66,77};
cout << "deque最大容量" << myd1.max_size() << endl;
cout << "当前deque容量" << myd1.size() << endl;
cout << "deque第一个" << myd1.front() << endl;
cout << "deque最后一个" << myd1.back() << endl;
cout << "deque是否为空" << myd1.empty() << endl;// 为0 不为空
myd1.swap(myd2);// 整体交换
for(auto i : myd1)
{
cout << i << endl;
}
for(auto i : myd2)
{
cout << i << endl;
}
cin.get();
}
长风破浪会有时,直挂云帆济沧海
posted on 2015-06-14 10:10 Dragon-wuxl 阅读(128) 评论(0) 收藏 举报
浙公网安备 33010602011771号