- 7
- 0
- 约1.63万字
- 约 63页
- 2018-01-14 发布于广东
- 举报
大学、PPT文档
.
第三章栈和队列
数据结构
.
一、栈
2
第一节 栈
栈是限定仅在表尾(top)进行插入或删除操作的线性表。
允许插入和删除的一端称为栈顶(top,表尾),另一端称为栈底(bottom,表头)
特点:后进先出 (LIFO)
.
二、栈的实现
3
第一节 栈
栈的存储结构主要有两种:
1. 顺序栈
2. 链式栈
.
一、顺序栈
4
第二节 顺序栈
顺序栈是栈的顺序存储结构
利用一组地址连续的存储单元依次存放自栈底到栈顶的数据元素
指针top指向栈顶元素在顺序栈中的下一个位置,
base为栈底指针,指向栈底的位置。
.
二、顺序栈的定义
5
第二节 顺表栈
采用C语言中动态分配的一维数组表示顺序表
#define STACK_INIT_SIZE 100 //栈存储空间的初始分配量
#define STACKINCREMENT 10 //栈存储空间的分配增量
typedef struct {
SElemType *base //存储空间基址
SElemType *top; //栈顶指针
int stacksize; //当前分配的存储容量(元素数)
} SqStack;
.
三、顺序栈的特性
6
第二节 顺序栈
top==0 或top==base 表示空栈
base=NULL表示栈不存在
当插入新的栈顶元素时,指针top+1
删除
原创力文档

文档评论(0)