数据结构与算法分析-栈(精品·公开课件).pptVIP

  • 2
  • 0
  • 约5.01千字
  • 约 28页
  • 2018-12-03 发布于广西
  • 举报

数据结构与算法分析-栈(精品·公开课件).ppt

2003-8-25 Lecture notes Stacks(栈) 栈是只允许在同一端进行插入和删除运算的线性表。允许插入和删除的那一端称为栈顶,另一端为栈底。若有栈 S = (s0,s1,……sn-1) 则s0为栈底结点,sn-1为栈顶结点。 栈的结点插入为进栈 栈的结点删除为出栈 栈具有后进先出(LIFO)的特性 Array-Based Stacks(顺序栈) 可以用顺序存储线性表来表示栈,为了指明当前执行插入和删除运算的栈顶位置,需要一个游标变量top(习惯称为栈顶指针,注意与指针变量的区别),top指出栈顶表元在数组中的下标。始终指向待插入元素的位置。 top是下一次进栈时,进栈表元要存入的数组元素下标。当栈为空时,top=0;栈满时,top=MAXN(数组元素个数),如图中的(b)和(c)。 进栈: 首先把进栈表元存入以top为下标的数组元素中,然后top加1,使top变为下一次进栈表元在数组中的下标。 出栈: 首先执行top减1,然后把以top为下标的栈顶表元送到接受出栈表元的变量中。同样限制在栈空时,不能再出栈;在栈满时,不能再入栈。 Array-based stack class implementation(顺序栈类的实现) //Array-based stack class implementation Template class Elem class A

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档