第四章 栈和队列.docVIP

  • 7
  • 0
  • 约5.98千字
  • 约 8页
  • 2016-12-25 发布于海南
  • 举报
第四章 栈和队列   栈和队列是两种重要的线性结构。   从数据结构角度看,栈和队也是线性表,其特殊性存于栈和队的基本操作是线性表操作的子集,它们是受限制的线性表。   一、栈(stack)   栈顶(top) 栈底(bottom) 空栈   栈又称为后进先出(last in first out)线性表。   关于栈的操作有:   1)inistack(s) 初始化操作,设定一个空栈要S。   2)empty(s)关栈空函数。空返回“true”。   3)push(s,x) 入栈操作。   4)pop(s) 出栈函数。   5)gettop(s) 取栈顶元素函数。   6)clear(s) 栈置空操作。 7)current_size(s)  求当前栈中元素个数函数。 栈的一个重要应用是在程序设计语言中实现递归过程。 递归算法作为计算机程序设计中的一种重要的算法,是较难理解的算法之一。简单地说,递归就是编写这样的一个特殊的过程,该过程体中有一个语句用于调用过程自身(称为递归调用)。递归过程由于实现了自我的嵌套执行,使这种过程的执行变得复杂起来,其执行的流程可以用图1所示。                           图1 递归过程的执行流程 从图1可以看出,递归过程的执行总是一个过程体未执行完, 就带着本次执行的结果又进入另一轮过程体的执行,

文档评论(0)

1亿VIP精品文档

相关文档