当前位置: 首页 > news >正文

C++ stl中的stack和queue的相关函数用法

文章目录

  • stack
    • stack的定义
    • stack的使用
  • queue
    • queue的定义
    • queue的使用

stack的使用 包含头文件< stack >

#include <stack>

queue的使用 包含头文件< queue >

#include <queue>

stack

stack是一种容器适配器,用于具有后进先出操作的场景中,只能从容器的一端进行元素的插入和获取操作。stack封装的就是数据结构中的栈
在这里插入图片描述

stack的定义

方式一:
使用默认的适配器定义栈。

stack<int> st1;

方式二:
使用特定的适配器定义栈。

stack<int, vector<int>> st1;
stack<int, list<int>> st2;

注意: 如果没有指定容器时,默认使用deque

stack的使用

以下为stack的常用成员函数:

成员函数功能
empty检测栈是否为空
size返回栈中元素的个数
top返回栈顶元素
push元素入栈
pop元素出栈

例子:

int main()
{stack<int> st;st.push(1);st.push(2);st.push(3);cout << st.size() << endl; //3while (!st.empty()){cout << st.top() << " ";st.pop();}cout << endl; //3 2 1return 0;
}

queue

queue是一种容器适配器,用于具有先进先出操作的场景中,只能从容器的一端获取元素,另一端插入元素。queue封装的就是数据结构中的队列
在这里插入图片描述

queue的定义

方式一:
使用默认的适配器定义队列。

queue<int> q1;

方式二:
使用特定的适配器定义队列。

queue<int, vector<int>> q1;
queue<int, list<int>> q2;

注意: 如果没有指定适配器时,默认使用deque

queue的使用

以下为queue的常用成员函数:

成员函数功能
empty检测队列是否为空
size返回队列中元素的个数
front返回队头元素
back返回队尾元素
push队尾入队列
pop队头出队列

例子:

int main()
{queue<int> q;q.push(1);q.push(2);q.push(3);cout << q.size() << endl; //3while (!q.empty()){cout << q.front() << " ";q.pop();}cout << endl; //1 2 3cout << q.size() << endl; //0return 0;
}

相关文章:

  • 23盘古石决赛
  • 前端自学入门:HTML 基础详解与学习路线指引
  • 安装jdk步骤
  • GOC指令
  • [javascript]取消异步请求
  • Linux——MySQL基础
  • SQL进阶:如何把字段中的键值对转为JSON格式?
  • C++进阶--红黑树的实现
  • 报错 <pcl/features/feature_evaluation/feature_evaluation_framework.h> 不存在的解决办法
  • 深入了解 Stable Diffusion:AI 图像生成的奥秘
  • Linux系统入门第十一章 --Shell编程之函数与数组
  • 影刀RPA开发-智能录制
  • Vulfocus靶场-文件上传-2
  • 提升编程效率的利器:Zed高性能多人协作代码编辑器
  • PCA降维
  • 操作系统导论——第27章 插叙:线程API
  • 单例模式的两种设计
  • 手动修改uart16550的FIFO深度?
  • 从0开始学习大模型--Day04--大模型的框架以及基本元素
  • 深入探索Laravel框架中的Blade模板引擎
  • 代理销售保险存在误导行为,农业银行重庆市分行相关负责人被罚款0.1万元
  • 外交部:应美方请求举行贸易代表会谈,中方反对美滥施关税立场没有变化
  • 中国电信财务部总经理周响华调任华润集团总会计师
  • 金融监管总局:支持银行有序设立科技金融专门机构,推动研发机器人、低空飞行器等新兴领域的保险产品
  • 甘肃临夏州政协委员马全成涉嫌诈骗罪,被撤销政协委员资格
  • 儿童文学作家周晴病逝,享年57岁