队列简称队(在策略上类似于生活中的排队策略),是一种可以实现“先进先出”的线性存储结构。它的数据只能从一端(称为队尾)存入,只能从另一端(队首)取出。向队列中插入新元素称为进队或入队,新元素入队后就成为新的队尾元素;从队列中删除元素称为离队或出队,元素出队后,其后继元素就成为队首元素。
图3.1所示是一个队列的操作示意。
图3.1
队列的基本操作介绍如下。
(1)入队:AddQueue(Q,x),将元素x插入队列Q中。
(2)出队:DelQueue(Q),从队列Q中取出一个元素。
(3)取队首元素:GetHead(Q),返回当前的队首元素。
(4)判断队列是否为空:Empty(Q),若队列Q为空,则返回1,否则返回0。
(5)显示队列中元素:Display(Q),按从队首到队尾的顺序显示队列中的所有元素。