数据结构第三部分栈和队列课件.pptVIP

  • 0
  • 0
  • 约9.71千字
  • 约 31页
  • 2017-03-19 发布于上海
  • 举报
数据结构 第三章 栈和队列 3.1 栈 3.1.1 栈的定义 栈(stack):是限定仅在表尾进行插入和删除操作的线性表。又称为后进先出(last in first out)的线性表(简称LIFO结构)。 栈顶(top):栈表尾端。 栈底(bottom):栈表头端。 例:假设栈 S=(a1,a2,…,an) ,则 a1 称 为栈底元素,an 为栈顶元素。栈中元素按 a1,a2,…,an 的次序进栈,退栈的第一个元 素应为栈顶元素。如右图所示。 3.1 栈 3.1.2 栈的顺序存储结构 定义:顺序栈(即栈的顺序存储结构):是利用一组地址连续的存储单元依次存放自栈底到栈顶的数据元素,同时附设指针top指示栈顶元素在顺序栈中的位置。 C语言描述 typedef struct stack_tag { elemtype *elem; //指向存放数据元素的内存块 int top; //栈顶标识,elem[top]是栈顶元素 int size; //栈的容量 }SQSTACK; 图形表示 3.1 栈 初始化栈 int InitSqstack(SQSTACK *S, int n) { //初始化顺序栈,栈的容量是n。成功则返回1,否则返回0 S-elem=(elemtype *)malloc(n*sizeof(e

文档评论(0)

1亿VIP精品文档

相关文档