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

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

相关推荐
ajassi20003 小时前
开源 C++ QT Widget 开发(十五)多媒体--音频播放
linux·c++·qt·开源
鹅毛在路上了5 小时前
C++, ffmpeg, libavcodec-RTSP拉流,opencv实时预览
c++·opencv·ffmpeg
John_ToDebug5 小时前
定制 ResourceBundle 的实现与 DuiLib 思想在 Chromium 架构下的应用解析
c++·chrome·ui
小欣加油7 小时前
leetcode 面试题01.02判定是否互为字符重排
数据结构·c++·算法·leetcode·职场和发展
王璐WL7 小时前
【c++】c++第一课:命名空间
数据结构·c++·算法
aramae7 小时前
C++ -- 模板
开发语言·c++·笔记·其他
MChine慕青9 小时前
顺序表与单链表:核心原理与实战应用
linux·c语言·开发语言·数据结构·c++·算法·链表
骄傲的心别枯萎11 小时前
RV1126 NO.16:通过多线程同时获取H264和H265码流
linux·c++·音视频·rv1126
落羽的落羽11 小时前
【C++】特别的程序错误处理方式——异常机制
开发语言·c++
空山新雨(大队长)11 小时前
C 语言第一课:hello word c
c++·c·exe