队列也是数据结构的一种。队列在我们生活中非常的常见,比如说,当我们去超市买东西时,若是人非常的多,那么我们在收银台就要排队付账,那么先来排队的人就可以先付账离开,而后来的人就要排在队伍的尾部等待。这样的方式其实就是队列的典型运用。
队列的最显著特点:只允许在队列的头部进行删除操作,只允许在队列的尾部进行插入操作。而这种方式被称作是“先进先出”方式,简称“FIFO”,也就是First In First Out。
接下来是队列的抽象数据类型。以下摘自书本。
ADT 队列(Queue) Data 同线性表,元素具有相同的类型,相邻元素具有前驱和后继的关系。 Operation InitQueue ( *Q ) : 初始化操作,建立一个空队列Q DestroyQueue ( *Q ) : 若队列Q存在则销毁它 ClearQueen ( *Q ) : 将队列Q清空 QueueEmpty ( Q ) : 若队列Q为空,则返回true,否则返回false GetHead ( Q, *e ) : 若队列存在且非空,用e返回队列Q的队头元素 EnQueue ( *Q, e ) : 若队列Q存在,插入新元素e到队列Q中并成为队尾元素 DeQueue ( *Q, *e ) : 删除队列Q中队头元素,并且用e返回其值。 QueueLength ( Q ) : 返回队列Q的元素个数 endADT
时间: 2024-10-27 05:04:52