数据与结构

栈与队列

栈:限定在表尾进行插入和删除的线性表。
栈是一种LIFO(Last In First Out)的线性表,也就是数据元素遵循后进先出的原则。

栈的抽象数据类型:
ADT 栈(Stack)
Data
具有线性表一样的性质。
Operation
top:获取栈顶元素
count:栈的长度
isEmpty:栈内元素是否为空
push(data):元素进栈
pop():元素出栈
removeAll():清空栈内元素
EndADT

按栈的存储结构分类:

  • 栈的顺序存储结构
    单栈
    共享栈
  • 栈的链式存储结构

共享栈:

两个顺序栈共享存储空间,栈1的栈顶在下标0处,栈2的栈顶在下标n-1处。