1、stack容器基本概念

stack是一种先进后出(First In Last Out,FILO)的数据结构,它只有一个出口,形式如图所示。stack容器允许新增元素,移除元素,取得栈顶元素,但是除了最顶端外,没有任何其他方法可以存取stack的其他元素。换言之,stack不允许有遍历行为。

有元素推入栈的操作称为:push,将元素推出stack的操作称为pop.


2、stack没有迭代器

Stack所有元素的进出都必须符合”先进后出”的条件,只有stack顶端的元素,才有机会被外界取用。Stack不提供遍历功能,也不提供迭代器。

3、stack常用API

3.1 stack构造函数

stack<T> stkT;//stack采用模板类实现, stack对象的默认构造形式:
stack(const stack &stk);//拷贝构造函数

3.2 stack赋值操作

stack& operator=(const stack &stk);//重载等号操作符

3.3 stack数据存取操作

push(elem);//向栈顶添加元素
pop();//从栈顶移除第一个元素
top();//返回栈顶元素

3.4 stack大小操作

empty();//判断堆栈是否为空
size();//返回堆栈的大小

C++-STL-组件(一)-容器05:stack(栈)相关推荐

  1. C++ STL : 模拟实现STL中的容器适配器stack和queue

    目录 什么是容器适配器 stack stack的文档介绍-(来自cplusplus) stack的实现 queue queue的文档介绍-(来自cplusplus) queue的实现 什么是容器适配器 ...

  2. 【C++ 语言】容器 ( queue 队列 | stack 栈 | priority_queue 优先级队列 | set 集合 | 容器遍历 | map )

    文章目录 queue 队列 stack 栈 priority_queue 优先级队列 priority_queue 优先级队列指定排序方法 priority_queue 优先级队列排序行为 prior ...

  3. C++小课堂:STL中的栈容器(stack)

    栈很像我们的箱子,我们将衣服这些装进箱子,第一个拿出来的肯定是最顶上的那件衣服,栈也一样. 今天我们就来学习栈容器:stack 头文件:<stack> 之前介绍的vector其实是STL中 ...

  4. C++STL之stack栈容器

    C++STL之stack栈容器 1. 再谈栈 回顾一下之前所学的栈,栈是一种先进后出的数据结构,而实现方式需要创建多个结构体,通过链式的方式进行实现,这是标准的栈的思路,而在STL中栈可以以更为简单的 ...

  5. C++ STL之stack栈容器

    一.STL: 1)标准模版库,提供了通用的模版库和函数.如:向量.链表.队列.栈. 2)核心组建包括:容器(Containers).算法(Algorithms).迭代器(Iterators). 二.S ...

  6. c++STL容器的stack

    STL容器的stack Stack简介 stack对象的拷贝构造与赋值 stack的数据存取 stack的大小 Stack简介 stack是堆栈容器,是一种"先进后出"的容器. ...

  7. Flutter开发之——多组件布局容器-Stack和IndexedStack及Positioned

    IndexedStack是Stack的子类,Stack是将所有的子组件叠加显示,而IndexedStack只显示指定的子组件 Positioned组件通常会作为Stack组件的子组件使用,可以设置绝对 ...

  8. STL序列式容器Standard Template Library Sequence Container

    STL序列式容器 STL Sequence Container 目录 STL序列式容器 STL Sequence Container STL(Standard Template Library)概述 ...

  9. 算法求解中的变量、数组与数据结构(STL 中的容器)

    本质上算法都是对数据的操作,没有数据,没有存储数据的容器和组织方式,算法就是无源之水无本之木,就是巧妇也难为无米之炊.算法是演员,变量.数组.容器等就是舞台, 然后整个算法的处理流程,都是针对这些数据 ...

  10. 【C++ STL学习笔记】C++ STL序列式容器(array,vector,deque,list)

    文章目录 C++ STL容器是什么? 迭代器是什么,C++ STL迭代器(iterator)用法详解 迭代器类别 迭代器的定义方式 C++序列式容器(STL序列式容器)是什么 容器中常见的函数成员 C ...

最新文章

  1. 社会丨中外大学校长:人工智能时代 未来高校教什么
  2. 计算机自动连续工作的基础是存储程序原理,计算机的存储程序工作原理是什么...
  3. 三元一次方程组步骤_[七年级网上课堂]8.4 三元一次方程组
  4. 一些有关计组实验中Quartus中的名词或术语的解释
  5. Caffe学习系列(11):图像数据转换成db(leveldb/lmdb)文件
  6. VTK:PolyData之PointInsideObject
  7. 电机与拖动单相变压器实验,江南大学物联网工程学院,实验报告
  8. CSS3特效,跳动的心
  9. ppt图片文字嵌入_形状,文字填充图片教你做出好看的PPT
  10. 财务数据分析工作总结汇报PPT模板
  11. 2.4GHz频段天线的选择
  12. c语音10的n次方_在C语言中,10的n次方怎么表示?
  13. r中gglot怎么组合多张图_怎样组合多张ggplot2图片
  14. web前端html怎么求最大值和最小值,求js数组的最大值和最小值的四种方法
  15. Windows ActiveMq开机自启动设置
  16. 计算机游戏155,MAME0.155经典1430款游戏合集
  17. 身体传感器 android,小米人体传感器手机客户端-小米人体传感器app下载v4.3.11 安卓版-西西软件下载...
  18. Rust Web 全栈开发 - 1 构建TCP Server
  19. 某无人机飞控系统的原理、组成及各传感器的作用
  20. MySQL教程二 基础查询与排序

热门文章

  1. MySQL order by的不同排序规则
  2. python中的变量不需要声明
  3. 市场上最受欢迎、消费者最爱吃的石锅鱼
  4. python爬虫浏览器伪装和设置代理ip
  5. 申请TexturePacker序列号
  6. 开启「浏览器多线程下载」选项
  7. Powershell 操作Excel的基本命令
  8. Unity Rigidbody.AddForce 的 ForceMode
  9. 网络协议分析(3):FTP
  10. Linux统计文件夹下个数指令