✅作者简介:热爱后端语言的大学生,CSDN内容合伙人 ✨精品专栏:C++面向对象 🔥系列专栏:C++泛型编程
文章目录
- 1、stack 容器概念模型
- 1.1、stack 容器模型图
- 1.2、stack 基本概念与特点
- 2、stack 容器常用接口
- 2.1、stack 代码综合使用
- 3、queue 容器概念模型
- 3.1、queue 容器模型图
- 3.2、queue 基本概念与特点
- 4、queue 容器常用接口
- 4.1、queue 代码综合使用
🔥前言
好久没有更新C++容器这块的内容了,那么今天一次性整合两种容器的概念模型与常用接口的使用:stack
与queue
。
概念:
stack ,栈(堆栈),是一种先进后出(First In Last Out,FILO
)的数据结构,其中一端封闭。
生活中栈的例子有很多,就比如一群人排队进入一个死胡同,先进去的人要想出去就要等后面的人都出去,而最后进来的人可以最先出去。
特点:
- 只有位于栈顶的元素才可以被外界访问
- 栈用进入数据称为入栈:
push
- 栈中弹出数据成为出栈:
pop
- stack 不支持遍历操作
- 遍历需要在不改变原存储空间的条件下进行
- 通过每次出栈来访问所有元素的方式不能叫遍历
- 能够判断容器是否为空和得到元素个数
- 通过入栈来计数,并不是对出栈计数
接口是栈容器封装的一些方法,可以被外调用,实现不同功能
构造函数:
stackstk;
- 默认构造,
T
采用了模板类的写法,存放数据类型
- 默认构造,
stack(const stack &stk);
- 拷贝构造函数
赋值操作:
stack& operator=(const stack &stk);
- 重载赋值运算符,可直接进行赋值
数据存取:
push(elem);
- 入栈操作,向栈顶添加元素
pop();
- 出栈操作,从栈顶移除元素
top();
- 返回栈顶元素
数量操作:
empty();
- 判断堆栈是否为空
size();
- 返回栈的大小
包含代码具体使用与运行效果
#include
#include
using namespace std;
int main()
{
//默认构造创建栈
stackstk;
//添加元素
stk.push(99);
stk.push(66);
stk.push(123);
//查看此时容器大小
cout
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?