C++初阶 Stack和Queue的介绍和使用
创始人
2024-04-09 23:17:33
0

作者:@小萌新
专栏:@C++初阶
作者简介:大二学生 希望能和大家一起进步
本篇博客介绍:本篇博客会简单的介绍STL中的栈和队列
在这里插入图片描述

本章目标

  1. 复习下栈这种数据结构特点
  2. 知道怎么使用STL中的栈
  3. 复习下队列这种数据结构的特点
  4. 知道怎么使用STL中的队列

Stack 栈

栈的特点

栈是一个先进先出的数据结构 它的数据从头部插入 从头部删除

一般来说栈是使用顺序表来实现的

在这里插入图片描述

如果说你对于栈这种数据结构还不熟悉或者说根本没学过的话 可以参考下萌新

的这篇博客

初阶数据结构栈

STL中的stack

定义

在STL中有两种使用方式

  1. 直接指定类型使用
    像这样子
   stack st1;
  1. 指定适配器实现栈
    像这样子
	stack> st2;stack> st3;

这里的适配器是什么意思呢?

实际上就是指定了我们在底层使用哪种方式实现栈

比如说

stack> st2;

这就是指定了我们在底层使用vector实现stack

使用

在这里插入图片描述

这里的这些在经历了string vector list之后是不是就轻车熟路了啊

所以下面我们直接用一段遍历将上面重要的函数全部用一边就可以

代码和显示效果如下

int main()
{stack st1;//stack> st2;//stack> st3;st1.push(1);st1.push(2);st1.push(3);st1.push(4);st1.push(5);while (!st1.empty()){cout << st1.top() << " ";st1.pop();}cout << endl;return 0;
}

在这里插入图片描述

队列 Queue

队列的特点

队列是一种经典的尾插头出的数据结构 类似下图

在这里插入图片描述
如果说你对于队列这种数据结构还不熟悉或者说根本没学过的话 可以参考下萌新

的这篇博客

初阶数据结构队列

STL中的queue

定义

定义方式和栈一眼 同样有两种

方式一:

  queue q1;

方式二:

指定适配器定义

代码表示如下

	queue> q2;queue> q3;

使用

在这里插入图片描述
还是一眼 我们使用一段代码来实现上面大部分重要的内容

代码和演示效果图如下

int main()
{queue q1;queue> q2;queue> q3;q1.push(1);q1.push(2);q1.push(3);q1.push(4);q1.push(5);while (!q1.empty()){cout << q1.front() << " ";q1.pop();}return 0;
}

在这里插入图片描述

总结

在这里插入图片描述

stack和queue是两种容器适配器 大体与我们之前学的数据结构类似

本篇博客介绍了STL库中stack和queue怎么使用
其实学到这里了 这些使用方式应该一眼就能看明白了 不过为了博客整体的工整萌新还是写下了这篇文章
如果这篇文章帮助到了你 别忘记一键三连啊
阿尼亚 哇酷哇酷!

相关内容

热门资讯

银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWS管理控制台菜单和权限 要在AWS管理控制台中创建菜单和权限,您可以使用AWS Identity and Access Ma...