陕西国际商贸学院数据结构第二章 栈和队列--栈结构.pdfVIP

  • 1
  • 0
  • 约8.91千字
  • 约 17页
  • 2019-05-05 发布于广东
  • 举报

陕西国际商贸学院数据结构第二章 栈和队列--栈结构.pdf

第二章 栈和队列(1) • 栈和队列也是线性表,只是操作受限的线性表。 • 由于操作上的限制,使他们的行为不同于一般 的线性表,而有自己的特点。 • 栈的定义 • 栈的顺序存储与实现顺序栈 • 栈的链式存储与实现链式栈 • 队列的定义 • 队列的顺序存储与实现 • 队列的链式存储与实现 • 栈与队列的应用 2.1 栈(Stack) 1、逻辑定义及特点 – 定义:只能在一端进行插入和删除操作的线性表。(操作限制) –允许插入和删除的一端称为栈顶(top) –另一端称为栈底(bottom) Push Pop –特点: 后进先出LIFO (Last In First Out) top 先进后出FILO (First In Last Out) an … bottom a1 栈(Stack) 栈顶 (Top)——栈中可插入、删除数据一端。 栈底 (Bottom)——栈中不可插删入数据一端。 插入:进栈、压栈、入栈 删除:退栈、弹出、出栈 栈顶 栈的基本操作: Top 1、创建一个空栈; an 2 、进栈 . 3、出栈 . . 4 、取栈顶元素 a 5、判断栈空、栈满、清空栈 栈底 2 Bottom a1 栈的存储实现方式: 1、基于数组的栈顺序栈 2 、基于链表的栈链式栈 栈的顺序存储实现(顺序栈) 2、栈的顺序存储实现 (1)顺序栈定义(顺序存储结构上的C语言实现) • 栈顶、栈底和栈大小要指示出来 Typedef struct { ElemType *Base;//栈底指针,也就是栈区指针 int Top; // 栈顶位置,Top总是指向下一个待存位置 int StackSize; // 已分配的空间大小(最大元素数) } SeqStack; SeqStack SStack; //定义栈变量 栈的顺序存储实现(顺序栈) (2 )、创建一个空栈 (栈的初始化) bool Init_SeqStack(SeqStack S, int Ssize=DefaultSize) //

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档