
队列是遵循先进先出(FIFO)原则的有序集合。队列在尾部添加新元素,并从顶部移除元素。最新添加的元素必须排在队列的末尾。你不能随机地访问队列中的元素。
队列跟栈非常相似,支持的操作也很有限,最基本的操作也是两个:入队enqueue(),放一个数据到 队列尾部;出队dequeue(),从队列头部取一个元素。所以,队列跟栈一样,也是一种操作受限的线性表数据结构。进的一端称为队尾 rear,出的一端称为对头 front。
跟栈一样,队列可以用数组来实现,也可以用链表来实现。用数组实现的栈叫作顺序栈,用链表实现的栈叫作链式栈。同样,用数组实现的队列叫作顺序队列,用链表实现的队列叫作链式队列。


时间复杂度分析
队列的时间复杂度为 O(n), 插入和删除的时间复杂度均为 O(1)。
网友评论