您的位置:首页 > 产品设计 > UI/UE

STL双端队列 deque

2016-03-20 16:28 441 查看

STL双端队列 deque

#include<iostream>
#include<string>
#include<queue>
#include<algorithm>
#include<iterator>
using namespace std;
/*
deque采用一块map(不是STL中的map,是一块连续空间)作为主控,
每个元素都是一个节点(cur fist last node)指向另一段连续较大的空间(成为缓冲区 默认512byte)
deque内维持一个map和 来两个迭代器 和元素个数指向表的第一个和最后一个位置
push_front时是在一块缓冲区尾部填充,并且移动头指针 所以它的迭代器
移动是十分麻烦的
*/
/*
虽然deque实现很繁琐 但是stack queue 的底层容器都是deque
heap以及priority_queue底层容器为vector
*/
/*
常用成员函数
push_front
pop_front
push_back
pop_back
erase
rbegin rend
size
*/
int main(void)
{
deque<int> dQ{1,8,-8,15,63,89,-2,44};
dQ.push_back(88);
//dQ的迭代器 是 随机存取迭代器 但是建议排序时 先拷贝至 vector
sort(dQ.begin(),dQ.end());
dQ.size();
dQ.erase(dQ.begin(),dQ.end());
return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: