栈的基本操作
前言
栈是一种特殊的线性表
1. 栈是限定仅在表尾进行插入和删除的线性表
2. 栈又称为LIFO(Last In First Out)的线性表
<一>实现方法
- 栈的顺序存储方式
- 栈的链式存储方式
<二>顺序栈的实现
主要实现以下几点功能:
1.初始化
2.栈的销毁
3.入栈
4.出栈
5.取栈顶元素
<三>链式栈的实现
主要实现功能:
链式栈实现的功能与顺序栈的类似
<四>小结
- 栈的作用
既然有了线性表?为什么还要引入栈?
栈的引入简化了程序设计的问题,划分了不同的关注层次,使得思考范围缩小,更加聚焦于要解决的问题核心。反之,像数组等,因为要分散精力去考虑数组的下标增减等细节问题,反而掩盖了问题的本质
栈的应用
1.递归
2.表达式求值
3.迷宫求解
4.括号匹配