码迷,mamicode.com
首页 > 编程语言 > 详细

C++STL特殊容器queue

时间:2019-02-13 00:22:54      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:输出   col   一个   排队   deque   seq   线性   mic   type   

queue的基本性能

queue是一个典型的数据缓冲构造,class queu<>实现出一个queue(也称FIFO[先进先出])。通俗的来说,就是一个线性表,你只能从尾部插入元素,而取出元素的操作则只能从首部进行,就像银行排队一样,办理业务只能从队首的人开始办,而新来的人则只能站在队尾等待。

技术图片

技术图片

queue使用须知

1.包含头文件

#include<queue>

2.在头文件<queue>中,class queue 定义如下

namespace std
{
    template <typename T,
              typename Container = deque<T>>
              class queue;
}

第一个template参数代表元素类型。带有默认值的第二个template参数定义queue内部用来存放元素的实际容器,默认采用deque。

实际上,你可以使用任何sequence容器支持queue,只要它们支持front()、back()、push_back()、pop_front()等操作,最后会给出具体的实例。

queue核心操作

1.核心接口成员函数

push()  //将一个元素放入queue内
front()  //返回queue内的首部元素
back()  //返回queue内的最后一个元素
pop()   //从queue的首部移除一个元素

2.queue的创建以及操作实例

#include<iostream>
#include<queue>
#include<string>
using namespace std;
int main()
{
    queue<string> q;//创建一个内部容器为string的queue
    q.push("Hellow ");
    q.push("World");
    q.push("!");//进入三个元素
    cout<<q.front();
    q.pop();//输出队首元素的同时弹出该元素,叫"出队"
    cout<<q.front();
    q.pop();
    cout<<q.back()<<endl;//只剩下一个元素时,该元素既是队首元素又是队尾元素
    q.pop();//此时元素全部弹出,下方输出queue此时的容量
    cout<<"Now numeber of elements in the queue: "<<q.size();

    return 0;
}

 

C++STL特殊容器queue

标签:输出   col   一个   排队   deque   seq   线性   mic   type   

原文地址:https://www.cnblogs.com/cloudplankroader/p/10367556.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!