数据结构与算法分析(Java版) 第3章新.pptVIP

  • 3
  • 0
  • 约5.29千字
  • 约 23页
  • 2015-12-18 发布于广东
  • 举报

数据结构与算法分析(Java版) 第3章新.ppt

第3章 栈和队列 第3章 栈和队列 堆栈和队列是两种特殊的线性表。堆栈的主要特点是只能在栈顶操作,也就是遵循先进后出的运算规则。队列的主要的特点是只能在一端插入,另一端删除的一种线性表,也就是遵循先进先出的运算规则。 3.1 栈 3.1.1 栈定义及基本概念 栈(Stack)又称堆栈,是限制在表的一端进行插入和删除运算的线性表。通常称能够进行插入、删除运算的这一端为栈顶(Top),另一端称为栈底(Bottom)。当表中没有元素时称为空栈。 习惯上将每次删除(也称为退栈)操作又称为弹出(POP)操作。删除的元素总是当前栈中“最新”的元素(栈顶元素)。 每次插入(称为进栈)操作称为压入(PUSH)操作,压入的元素总是当前栈中“最新”的元素。 3.1 栈 3.1.1 栈定义及基本概念 在空栈中最先插入的元素总被放在栈的底部,只有所有元素被弹出之后它才能被删除。 当栈满时进栈运算称为“上溢”; 当栈空时退栈运算称为“下溢”。 堆栈的存储结构有顺序存储结构和链式存储结构两种,在顺序存储结构下,可以考虑堆栈的上溢,而在链式存储结构下,不必考虑对杂货内的上溢现象,只需要考虑堆栈的下溢现象。 3.1 栈 3.1.1 栈定义及基本概念 堆栈上溢是一种出错状态,应该设法避免之;而下溢则可能是正常现象,通常下溢用来作为程序控制转移的条件。 堆栈的运算规则是按后进先出的原则进行的(又称为后进先出

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档