系列文章目录
【数据结构基础】是博主学习Java之余的一些记录,博主希望通过使用Java实现基本的数据结构,来学习、掌握Java的基本语法以解答常见的算法问题,对Java的使用还处于入门阶段,使用不当的地方希望得到指正。
文章目录
栈
- 系列文章目录
- 栈
- 一、栈的实现
- 二、栈的应用
-
- 1. 括号匹配问题
- 2. 【华为机试真题 Python实现】最大括号深度【2022 Q2 | 100分】
栈(Stack)是一个数据集合,有后进先出LIFO(last-in,first-out)的特点,可以认为是只能在一端进行插入或删除操作的列表。
战争电影里给弹夹装子弹的镜头应该都见过吧,弹夹在顶部有一个入口,每次顶部压入一颗子弹,从弹夹顶部取出一个子弹,弹夹中的弹簧又会把剩余子弹顶到入口,这个过程就好比数据入栈、出栈操作。
看下图,帮助你理解入栈出栈的过程:
栈可以使用数组、链表