3.3队列 队列的基本概念 队尾插 1、队列定义只能在表的一端进行插入操作,在表的另一端 进行删除操作的线性表。 2、逻辑结构与线性表相同,仍为_对一关系。<队头删 3、存储结构顺序队列或链队列,以循环顺序队列更常见 4、运算规则只能在队首和队尾运算,且访问结点时依照 先进先出(FIFo)的原则 5、实现方式关键是掌握入队和出队操作,具体实现依顺 序队或链队的不同而不同。 基本操作:入队或出队,建空队列,判队空或队满等操作
6 3.3 队列 一、队列的基本概念 1、队列定义 3、存储结构 4、运算规则 5、实现方式 2、逻辑结构 只能在表的一端进行插入操作,在表的另一端 进行删除操作的线性表。 队尾插 入 队头删 除 与线性表相同,仍为一对一关系。 顺序队列或链队列,以循环顺序队列更常见。 只能在队首和队尾运算,且访问结点时依照 先进先出(FIFO)的原则。 关键是掌握入队和出队操作,具体实现依顺 序队或链队的不同而不同。 基本操作:入队或出队,建空队列,判队空或队满等操作
队列( Queue)是仅在表尾进行插入操作,在表头进 行删除操作的线性表。它是一种先进先出(FIF0) 的线性表。 例如:队列Q=(a1,a2,a3, 队首 队尾 在队尾插入元素称为入队;在队首删除元素称为 出队。 当队列中没有数据元素时称为空队列
7 队列 (Queue)是仅在表尾进行插入操作,在表头进 行删除操作的线性表。它是一种先进先出(FIFO) 的线性表。 例如:队列 Q= (a1 , a2 , a3 , ……….,an-1 , an ) 在队尾插入元素称为入队;在队首删除元素称为 出队。 当队列中没有数据元素时称为空队列。 队首 队尾
问:为什么要设计队列?它有什么独特用途? 答:1.离散事件的模拟(模拟事件发生的先后顺序, 例如CPU芯片中的指令译码队列); 2.操作系统中的作业调度(一个CPU执行多个 作业); 3.简化程序设计。 注:队列的实现方式是本节重点,关键是掌握入队和出队操作。 具体实现依存储结构(链队列或顺序队列)的不同而不同
8 注:队列的实现方式是本节重点,关键是掌握入队和出队操作。 具体实现依存储结构(链队列或顺序队列)的不同而不同。 1. 离散事件的模拟(模拟事件发生的先后顺序, 例如 CPU芯片中的指令译码队列); 2. 操作系统中的作业调度(一个CPU执行多个 作业); 3. 简化程序设计。 答: 问:为什么要设计队列?它有什么独特用途?