C++队列

好久没有发博客了,欢迎阅读:C++队列。

1.队列的介绍

队列 (queue)是一种先进先出的、操作受限的线性表

数据结构是:先进入队列的先出去,后进入队列的后出去。

必须从队尾插入新元素,队列中的元素只能从队首出。

队列既可以用 数组 来实现,也可以用 链表 来实现。

2.队列的定义

先把头文件加上:

cpp 复制代码
#include<queue>

否则...👇

定义写上:

cpp 复制代码
queue <type> name;

type是类型,需用int,double,float,char,string或结构体名称替代。

name是名称,只要不是关键词即可。(关键词参见此处

3.相关操作

为了便于描述,我默认定义了一个队列q。

(1)是否为空q.empty()

若队列为空,返回值=1;否则为0。

e.g. if(q.empty()) cout<<1;

如果q为空,输出1。

(2)入队q.push(x);

将x入队。

e.g. q.push(1234);

将12345加入队中。

(3)出队q.pop();

将x出队。

e.g. q.pop();

将队首元素离队。

(4)队首元素q.top()

获取队首元素。

e.g. int x=q.top();

将x赋值为队首元素。

-----------------------------------------------不怎么华丽的分界线-------------------------------------------------------

4.综合运用

这是一段示例(只展示主函数部分):

cpp 复制代码
queue <int> q;
q.push(1);
q.push(2);
cout<<q.top();
q.pop();
q.pop();
if(q.empty())
cout<<"Empty";

5.结语

这就是全部内容,感谢观看和关注!

相关推荐
恋恋西风3 小时前
C++ 理解 std::thread 在单核和多核上的行为差异
开发语言·c++
Brilliantwxx3 小时前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
BizzZ_3 小时前
C++(22)——类型转换和IO流
开发语言·c++
青梅味猪大肠6 小时前
【深入浅出C++】为什么虚表指针可以解决菱形继承
开发语言·c++
Lhan.zzZ7 小时前
QML 组件库:VS2022 + Qt 静态库方案
开发语言·c++·qt·visual studio
一木 之林9 小时前
五、C++ 新特性、关键字与编译原理(进阶)(二)
java·开发语言·c++
OPEN-F9 小时前
C++11/14新特性精讲:移动语义与智能指针实战
开发语言·c++·算法
闭月之泪舞10 小时前
C++编程学习
c++·学习
哭泣方源炼蛊11 小时前
并查集进阶 P1(带权并查集,并查集分类)
数据结构·c++·算法·二进制·带权并查集
小小龙学IT12 小时前
ONNX Runtime 开源 AI 推理引擎深度解析:从模型部署到边缘 AI 加速的全栈实战
c++·人工智能·开源