ppt课件
7
2 、说明:设(a1, a2, a3, …, an ) 是一个栈
1)表尾称为栈顶,表头称为栈底 ,即a1为栈底元素,an为栈顶元素;
2)在表尾插入元素的 操作称进栈操作,在表头删除元素的操作称为 出栈操作;
3)元素按a1, a2, a3, …, an 的次序进栈, 第一个进栈的元素一定在 栈底,最后一个进栈的元素一定在栈顶, 第一个出栈的元素为栈顶元素;
…….
} ADT Stack
ppt课件
13
二 栈的存储表示和操作的实现
和线性表类似,栈也有两种存储表示,其顺 序存储结构简称为顺序栈。
和顺序表类似,对顺序栈也需要事先为它分 配一个可以容纳最多元素的存储空间。
ppt课件
14
顺序存储方式:同一般线性表的顺序存储结构 完全相同。是利用一组连续的内存单元依次存放 自栈底到栈顶的数据元素,栈顶元素的位置由一 个称为栈顶指针的变量指示 。
ppt课件
17
特点:简单、方便,但易产生溢出。 上溢(Overflow ) 栈已经满,又要压入元素; 下溢(Underflow ) 栈已经空,还要弹出元素;
注:上溢是一种错误,使问题的处理无法进行下去; 而下溢一般认为是一种结束条件,即问题处理结束。
ppt课件
18
顺序栈的存储表示
#define STACK_INIT_SIZE 100//栈存储空间的初始分配量
的特点(Last In First out-LIFO First In Last
out ---FILO )
ppt课件
9
课堂练习
假设有A , B , C , D 四个元素;它们入栈次 序为A一> B 一>C 一>D 出栈次序任意, 请问不可能得到下面哪些出栈序列?