C++ STL--queue 的使用方法

2、queue
queue 模板类的定义在<queue>头文件中。
与stack 模板类很相似,queue 模板类也需要两个模板参数,一个是元素类型,一个容器类
型,元素类型是必要的,容器类型是可选的,默认为deque 类型。
定义queue 对象的示例代码如下:
queue<int> q1;
queue<double> q2;

queue 的基本操作有:
入队,如例:q.push(x); 将x 接到队列的末端。
出队,如例:q.pop(); 弹出队列的第一个元素,注意,并不会返回被弹出元素的值。
访问队首元素,如例:q.front(),即最早被压入队列的元素。
访问队尾元素,如例:q.back(),即最后被压入队列的元素。
判断队列空,如例:q.empty(),当队列空时,返回true。
访问队列中的元素个数,如例:q.size()

#include <cstdlib>
#include <iostream>
#include <queue>

using namespace std;

int main()
{
    int e,n,m;
    queue<int> q1;
    for(int i=0;i<10;i++)
       q1.push(i);
    if(!q1.empty())
    cout<<"dui lie  bu kong\n";
    n=q1.size();
    cout<<n<<endl;
    m=q1.back();
    cout<<m<<endl;
    for(int j=0;j<n;j++)
    {
       e=q1.front();
       cout<<e<<" ";
       q1.pop();
    }
    cout<<endl;
    if(q1.empty())
    cout<<"dui lie  bu kong\n";
    system("PAUSE");
    return 0;
}
时间: 2024-10-17 04:00:06

C++ STL--queue 的使用方法的相关文章

浅谈C++ STL queue 容器

浅谈C++ STL queue 容器 本篇随笔简单介绍一下\(C++STL\)中\(queue\)容器的使用方法和常见的使用技巧.\(queue\)容器是\(C++STL\)的一种比较基本的容器.我们在学习这个容器的时候,不仅要学到这个容器具体的使用方法,更要从中体会\(C++STL\)的概念. queue容器的概念 \(queue\)在英文中是队列的意思.队列是一种基本的数据结构.而\(C++STL\)中的队列就是把这种数据结构模板化了.我们可以在脑中想象买票时人们站的排队队列.我们发现,在一

STL中的nth_element()方法的使用

STL中的nth_element()方法的使用 通过调用nth_element(start, start+n, end) 方法可以使第n大元素处于第n位置(从0开始,其位置是下标为 n的元素),并且比这个元素小的元素都排在这个元素之前,比这个元素大的元素都排在这个元素之后,但不能保证他们是有序的,下面是这个方法的具体使用方法. 1 #include <iostream> 2 3 #include <algorithm> 4 5 #include <functional>

C++ STL queue 队列容器 基本方法

创建队列 queue<int> que; 读取队首元素 que.front(); 读取队尾元素 que.back(); 元素入队 queue.pust(); 元素出队 queue.pop(); 队列大小 queue.size(); 队列是否为空 queue.empty(); 原文地址:https://www.cnblogs.com/izayoi/p/9629488.html

STL--stack/queue的使用方法

stack(栈)和queue(队列)也是在程序设计中经常会用到的数据容器,STL为我们提供了方便的stack(栈)的queue(队列)的实现. 准确地说,STL中的stack和queue不同于vector.list等容器,而是对这些容器的重新包装.这里我们不去深入讨论STL的stack和queue的实现细节,而是来了解一些他们的基本使用. 1.stack stack模板类的定义在<stack>头文件中. stack模板类需要两个模板参数,一个是元素类型,一个容器类型,但只有元素类型是必要的,在

C++大小写转换和性能(C语言,C++,API,STL一共4种方法)

大小写转换和性能 前言 本文主要讨论最基本的一些大小写转换函数和API,不讨论一些常见的字符串程序库里面的大小写转换接口,另外本文的落脚点是这些转换函数的性能和日常开发中遇到的一些问题. 不考虑范围 其实ctype.h里面有定义一套宏,就是不考虑字符是否落在A-Z,a-z范围,直接计算(直接用加减法或者使用位与或计算,差别不是很大).显然这样的效率是最高的,但是使用可能是有问题的,遇到中文或者其他友邦的一些字符,可能就转换错了,当然如果已经提前确认过输入会落在A-Z,a-z范围,则是可以使用这种

正确使用stl map的erase方法

先声明:下面的文章是针对windows的用法,因为std::map的erase函数的windows的实现版本是返回一个std::map的迭代器,但是STL标准里面的该函数的返回值确是: map.erase有3个重载:void erase ( iterator position );size_type erase ( const key_type& x );void erase ( iterator first, iterator last ); . 所以下面的代码中的最后一个例子仅仅可以在win

STL - queue(队列)

Queue简介 queue是队列容器,是一种"先进先出"的容器. queue是简单地装饰deque容器而成为另外的一种容器. #include <queue> queue对象的默认构造 queue采用模板类实现,queue对象的默认构造形式:queue<T> queT; 如: queue<int> queInt; //一个存放int的queue容器. queue<float> queFloat; //一个存放float的queue容器.

STL&lt;queue&gt;的使用

队列是一种基本的线性数据结构.它满足先进先出(First In ,First Out)的原则. 我们可以应用这种数据结构实现很多复杂的问题.但每次要手写队列的相关函数并不省事,我们便可以应用STL中的queue库来使用队列. 1调用头文件 #include<queue> 2.定义队列 queue<int>q; 3.基本操作 push().   ----向队列中添加新元素,填入的新元素进入队尾. pop().     ----弹出队顶元素,不返回任何值. (刘汝佳先生的算法竞赛入门经

STL——queue

队列是一种先进先出 (FIFO) 的数据结构,它允许在一端插入数据,在另一端删除数据.最先进入队列的数据最先出队列.除此之外,队列还允许访问队头元素和队尾元素.获取队列长度和判断空列队等操作.队列不提供遍历的方法,也不提供迭代器. back()返回最后一个元素 empty()如果队列空则返回真 front()返回第一个元素 pop()删除第一个元素 push()在末尾加入一个元素 size()返回队列中元素的个数 #include <bits/stdc++.h> using namespace

STL --&gt; queue单向队列

queue单向队列 queue 模板类的定义在<queue>头文件中.与stack 模板类很相似,queue 模板类也需要两个模板参数,一个是元素类型,一个容器类型,元素类型是必要的,容器类型是可选的,默认为deque 类型. 定义queue 对象的示例代码如下:queue<int> q1;queue<double> q2; queue 的基本操作有: q.push(x)                入队,将x 接到队列的末端.q.pop()