第三章 数据结构与算法_线性结构(三)精要.ppt

第三章 数据结构与算法_线性结构(三)精要.ppt

第三章 数据结构与算法_线性结构(三)精要

2.3 队列及实现 1. 定义(queue) 只能在表的一端进行插入运算,在表的另一端进行删除运算的线性表。 与一般线性表的区别:仅在于运算规则不同。 2. 构成 队头(front):在表中只允许进行删除的一端; 队尾(rear):只允许进行插入另一端。 举例: 注意: 空队(无元素)队头与队尾相遇 逻辑结构(a1—a2—a3) … a3 a2 a1 … 队头 队尾 3. 运算规则 只能在队头和队尾运算,且访问结点时按照先进先出(FIFO)的原则。 4. 逻辑结构 与线性表相同,仍为一对一( 1:1)关系。 5. 主要运算 (1)入队—在队尾插入元素; (2)出队—在队头删除元素。 6. 基本操作 入队或出队,建空队列,判队空或队满等操作。 7. 存储结构(两种) 顺序队列,队列的数组表示,使用时常被臆想为一个环状空间,因此又称为循环队列。 链队列,队列的链式表示,适于用户无法预估空间的情况。 8.队列的抽象数据类型描述 类型名称:队列(Queue) 数据对象集:一个有0个或多个元素的有穷线性表。 操作集:长度为MaxSize的队列Q,队列元素item; 1、Queue CreatQueue( int MaxSize ):生成长度为MaxSize的空队列; 2、int IsFullQ( Queue Q,

文档评论(0)

1亿VIP精品文档

相关文档