第3章堆栈与队列1.pptVIP

  • 7
  • 0
  • 约6.24千字
  • 约 36页
  • 2017-06-17 发布于湖北
  • 举报
第三章 堆栈和队列 3.1 堆栈(Stack) 基本概念、抽象数据类型、顺序表示和实现、链式表示和实现 3.2 队列(Queue) 基本概念、抽象数据类型、顺序队列、顺序循环队列、链式队列、队列的应用 1. 定义 注:堆栈可以完成比较复杂的数据元素特定序列的转换任务,但它不能完成任何输入输出序列的转换任务。 例1:堆栈是什么?它与一般线性表有什么不同? 例2、一个栈的输入序列为1,2,3,若在入栈的过程中允许出栈,则可能得到的出栈序列是什么? 解:可以通过穷举所有可能性来求解: ① 1入1出, 2入2出,3入3出, 即123; ② 1入1出, 2、3入,3、2出, 即132; ③ 1、2入,2出, 3入3出, 即231; ④ 1、2入,2、1出,3入3出, 即213; ⑤ 1、2、3入,3、2、1出, 即321; 合计有5种可能性。 例3、一个栈的输入序列是12345,若在入栈的过程中允许出栈,则栈的输出序列43512可能实现吗?12345的输出呢? 解: 43512不可能实现,主要是其中的12顺序不能实现; 12345的输出可以实现,每压入一数便立即弹出即可。 二、堆栈抽象数据类型 数据集合:{ a0, a1, … , an-1 } ai的数据类型为

文档评论(0)

1亿VIP精品文档

相关文档