C++ 标准库类型 queue


一、queue 的使用与定义


1、使用 queue 类型

  • queue 类型没有迭代器,不能用迭代器遍历队列
#include <queue>  

2、定义和初始化 queue 对象

// 声明一个空的 queue
queue<int> q; // 声名并赋值
queue<int> q1;for(int i=0; i<10; i++)q1.push(i); 

二、queue 操作


1、queue 类成员函数

front( ): 返回队首元素
back( ): 返回队尾元素
pop( ): 队首出队
push( ): 队尾入队
emplace( ): 队尾插入元素
empty( ): 是否为空
size( ): 队列的大小
swap( ): 和另一个队列互换


2、实例

#include <iostream>
#include <queue>
using namespace std;// 创建一个队列对象
queue<int> q;// 入队
q.push(1)// 出队
q.pop()// 队首、队尾元素
q.front()
q.back()// 队列大小
q.size()// 遍历队列
while (!q.empty()){cout << ' ' << q.front();q.pop();}

三、deque


1、使用 deque

  • deque 有迭代器
  • 双向的队列(Double ended queue)
// 头文件
#include <deque> // 声名一个空的deque
deque<int> dq; 

2、deque 操作

与queue类似,但是可以双向操作

pop_back( ):从队尾出队
pop_front( ):从队首出队
push_back( ):从队尾入队
push_front( ):从队首入队


C++ 标准库类型 queue相关推荐

  1. bitset类型, 标准库类型

    C++ primer 17.2 bitset类型, 标准库类型 1 使得位运算更容易实现, 并且能够处理超过最长整型大小的位集合. bitset定义在bitset中 定义和初始化bitset 1 bi ...

  2. C++ 标准库类型 list

    C++ 标准库类型 list 一.list 的使用与定义 1.使用 list 类型 list 类型是双向链表,有迭代器 插入和删除的速度比较快,查询的速度慢 #include <list> ...

  3. C++ 标准库类型 stack

    C++ 标准库类型 stack 一.stack 的使用与定义 1.使用 stack 类型 stack 类型没有迭代器,不能用迭代器遍历队列 #include <stack> 2.定义和初始 ...

  4. C++ 标准库类型 map

    C++ 标准库类型 map 一.map 的使用与定义 1.使用 map 类型 标准库类型 map 就是字典,每个元素是一组键值对.使用红黑树实现. 关键字是互异的,不存在相同的键值. map 内部的元 ...

  5. C++ 标准库类型 set

    C++ 标准库类型 set 一.set 的使用与定义 1.使用 set 类型 标准库类型 set 就是数学上的集合.使用红黑树实现. 每个元素只出现一次 #include <set> us ...

  6. C++ 标准库类型 vector

    C++ 标准库类型 vector 一.vector 的使用与定义 1.使用 vector 类型 标准库类型 vector 表示对象的集合,也称容器. #include <vector > ...

  7. C++ 标准库类型 string

    C++ 标准库类型 string 一.string 类型的使用和定义 1.使用 string 类型 标准库类型 string 表示可变长的字符序列 #include <string> us ...

  8. 标准库类型string的基本功能和使用

    标准库类型string的基本功能和使用 String基本知识 初始化 基本操作 范围for语句 string定义的迭代器及其他 关于下标操作 示例代码 练习3.6 cctype.cpp punctRe ...

  9. 标准库类型String,Vector

    string对象中每个字符的处理: 要用到 for(声明:表达式) 语句 比如简单的打印string str中每一个字符 --- string str("hello world!!!&quo ...

最新文章

  1. 练手扎实基本功必备:非结构文本特征提取方法
  2. 独家 | 解析Tansformer模型—理解GPT-3, BERT和T5背后的模型(附链接)
  3. python3中,os.path模块下常用的用法总结
  4. [YTU]_2640( 编程题:运算符重载---矩阵求和)
  5. 数据库行转列的sql语句(zt)
  6. python数据分析基础教程考试试卷_Python数据分析-自测试卷5
  7. IT销售素质 -- 自信进取
  8. php 无限查找下级业绩_PHP 面试踩过的坑
  9. 怎么隐藏桌面计算机名,Win7隐藏桌面所有图标
  10. python字符串是什么_python字符串详解
  11. SQLServer中在视图上使用索引(转载)
  12. 使用YUI3创建Popup弹出层
  13. 视频基本知识  AD转换和YUV,cb cr基本知识
  14. 卡尔曼滤波算法bms c语言,一种利用扩展卡尔曼滤波算法估算锂电池SOC的方法与流程...
  15. linux 指令tftp传输文件_tftp命令怎么传输文件,tftp命令怎么传输文件具体操作方法?...
  16. 工具_Typora免费版下载(Typora最后一个免费版)md编辑器
  17. makefile中wildcard的理解
  18. USB over Network通过本地网络或 Internet 共享的远程 USB 设备
  19. 写在2021最后一天
  20. OPenCV imread()函数第二个参数详解

热门文章

  1. fopen需要改写成fopen_s的时候
  2. jquery 如何保存拖动空间的位置
  3. global cache cr request
  4. 反射和动态代理实现上下文切入AOP效果
  5. The Design and Implementation of Open vSwitch
  6. NRF52 UICR寄存器读写
  7. suoi46 最大和和 (线段树)
  8. js 中继承常用的几种方法
  9. codevs 1507 酒厂选址
  10. SpringMVC环境简单搭建