借鉴CSDN博主 顺其自然~ 的文章 仅用于本笨蛋复习
一.queue 队列
1.queue头文件
#include<queue>;
2.queue简介
队列,queue,特点是先进先出。
3.queue常用内置函数
queue<int>Q;
//尾插
Q.push(7);
//前删,无返回值
Q.pop();
//返回元素个数
Q.size();
//判断是否为空,是则返回true,不是则返回false
Q.empty();
//返回队首元素
Q.front();
//返回队尾元素
Q.back();
二.deque 双端队列
1.deque头文件
#include<deque>;
2.deque简介
双端队列,deque,与queue不同之处在于两端都可以进和出。
3.deque常用内置函数
deque<int>D,G;
int x=6;
//队首增加元素
D.push_front(x);
//队尾增加元素
D.push_back(x);
//队首删除元素
D.pop_front();
//队尾删除元素
D.pop_back();
//将[beg, end)区间中的数据拷贝赋值给本身。注意该区间是左闭右开的区间
D.assign(G.begin(),G.begin()+5);
//将n个elem拷贝赋值给本身
D.assign(6,10);//6个10
//返回元素个数
D.size();
//判断是否为空,是则返回true,不是则返回false
D.empty();
//在pos位置插入一个elem元素的拷贝,返回新数据的位置
D.insert(pos,elem);
//在pos位置插入n个elem数据,无返回值
D.insert(pos,n,elem);
//在pos位置插入[beg,end)区间的数据,无返回值
D.insert(pos,beg,end);
//重新指定容器的长度为num,若容器变长,则以默认值0填充新位置。如果容器变短,则末尾超出容器长度的元素被删除
D.resize(num);
//重新指定容器的长度为num,若容器变长,则以elem值填充新位置。如果容器变短,则末尾超出容器长度的元素被删除
D.resize(num,elem);