C++deque双端队列

xiaoxiao2021-02-28  23

调用头文件:

 

#include<deque>

 

using namespace std;

详细用法(部分):

deque<Type> k;      ------      定义一个deque的变量(定义时已经初始化)      例如: deque<int> k;

k.empty()      ------      查看是否为空范例,是的话返回1,不是返回0

k.clear()      ------      清除队列里的所有数据

k.push_front(i)      ------      从已有元素前面增加元素i(队伍大小不预设)

k.push_back(i)      ------      从已有元素后面增加元素i(队伍大小不预设)

k.pop_front()      ------      清除第一个元素

k.pop_back()      ------      清除最后一个元素

k.front()      ------      显示第一个元素      例如n = k.front();

k.back()      ------      显示最后一个元素

k.size()      ------      输出现有元素的个数

 

 

 

#include<stdio.h>

#include<deque>

using namespace std;

int main(void)

{

int i;

int a[10] = {0,1,2,3,4,5,6,7,8,9};

deque<int> q;

for(i=0;i<=9;i++)

{

if(i%2==0)

q.push_front(a[i]);

else

q.push_back(a[i]);

} /*此时队列里的内容是: {8,6,4,2,0,1,3,5,7,9}*/

q.pop_front();

printf("%d\n", q.front()); /*清除第一个元素后输出第一个(6)*/

q.pop_back();

printf("%d\n", q.back()); /*清除最后一个元素后输出最后一个(7)*/

return 0;

}

 

原文:https://blog.csdn.net/jaihk662/article/details/52161414

 

转载请注明原文地址: https://www.6miu.com/read-2449957.html

最新回复(0)