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.结语

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

相关推荐
好评1246 小时前
【C++】智能指针全解
c++·智能指针
是阿建吖!6 小时前
【Linux】信号
android·linux·c语言·c++
城北徐宫6 小时前
Linux信号深度解剖:5种产生、3张表、4次切换
linux·c++·学习
liulilittle6 小时前
论 Linux 内核态全局稳态带宽的卡尔曼估计与工程实现
linux·服务器·网络·c++·计算机网络·tcp·通信
XBodhi.6 小时前
Visual Studio C++ 语法错误: 缺少“;”(在“return”的前面)
开发语言·c++·visual studio
froyoisle9 小时前
CSP-J 历年复赛 T1 及解析(2019~2025)
数据结构·c++·算法·csp-j·csp·算法竞赛·信息学
basketball6169 小时前
C++ 高级编程:2. 基本线程池实现
java·开发语言·c++
chao1898449 小时前
SGM(Semi-Global Matching)立体匹配算法 — C++ 实现
开发语言·c++·算法
10岁的博客9 小时前
IOI 2018 高速公路收费(Highway)题解:二分与树的巧妙结合
开发语言·c++
不知名的老吴9 小时前
C++运算符重载的常见注意点
开发语言·c++