2011年计算机二级公共基础知识辅导笔记(4)
文章作者 100test 发表时间 2011:03:18 18:47:52
来源 100Test.Com百考试题网
1.4 队列
1. 队列的基本概念
队列是只允许在一端进行删除,在另一端进行插入的顺序表,通常将允许删除的这一端称为队头,允许插入的这一端称为队尾。当表中没有元素时称为空队列。
队列的修改是依照先进先出的原则进行的,因此队列也称为先进先出的线性表,或者后进后出的线性表。例如:火车进遂道,最先进遂道的是火车头,最后是火车尾,而火车出遂道的时候也是火车头先出,最后出的是火车尾。若有队列:
Q =(q1,q2,…,qn)
那么,q1为队头元素(排头元素),qn为队尾元素。队列中的元素是按照q1,q2,…,qn的顺序进入的,退出队列也只能按照这个次序依次退出,即只有在q1,q2,…,qn-1都退队之后,qn才能退出队列。因最先进入队列的元素将最先出队,所以队列具有先进先出的特性,体现“先来先服务”的原则。
队头元素q1是最先被插入的元素,也是最先被删除的元素。队尾元素qn是最后被插入的元素,也是最后被删除的元素。因此,与栈相反,队列又称为“先进先出”(First In First Out,简称FIFO) 或“后进后出”(Last In Last Out,简称LILO)的线性表。
2. 队列运算
入队运算是往队列队尾插入一个数据元素;退队运算是从队列的队头删除一个数据元素。
队列的顺序存储结构一般采用队列循环的形式。循环队列s=0表示队列空;
s=1且front=rear表示队列满。计算循环队列的元素个数:“尾指针减头指针”,若为负数,再加其容量即可。
#ff0000>