跳到主要内容

队列模型与操作

队列是什么?​

  • 队列: 先入先出 (FIFO) 的线性数据结构;
  • 队首: 队列头部, 出队的一端;
  • 队尾: 队列尾部, 入队的一端;
  • 入队: 在队尾添加元素;
  • 出队: 删除队首元素;
出队 ← [ 1 | 2 | 3 ] ← 入队
队首 队尾

队列有哪些基本操作?​

方法描述时间复杂度
push()元素入队, 添加至队尾O(1)
pop()队首元素出队O(1)
peek()访问队首元素, 不出队O(1)

双向队列与普通队列有什么区别?​

  • 双向队列: 栈和队列的集合体;
  • 能力: 允许在头部和尾部进行插入和删除操作;
  • 普通队列: 只能在队尾插入、队首删除;
  • 栈: 只能在同一端插入和删除;