1.队列(queue)

操作 函数原型 时间复杂度 说明
入队 push O(1) 将元素x加入队尾,可能触发底层容器扩容
出队 pop() 移除队首元素,‌不返回该元素‌(需先调用front()获取)
访问队首 front() 返回队首元素的‌引用‌(空队列调用会导致未定义行为)
访问队尾 back() 返回队尾元素的‌引用‌(空队列调用会导致未定义行为)
判空 empty() 队列空返回true,否则false
元素数量 size() 返回当前队列中元素个数

2.双端队列(deque)

操作 函数原型 时间复杂度 说明
头部插入 push_front() O(1) 在队列头部插入元素
尾部插入 push_back() 在队列尾部插入元素
头部删除 pop_front() 删除队列头部元素(空队列调用会导致未定义行为)
尾部删除 pop_back() 删除队列尾部元素(空队列调用会导致未定义行为)
访问头部元素 front() 返回队列头部元素的引用
访问尾部元素 back() 返回队列尾部元素的引用
判空 empty() 队列空返回true,否则false
元素数量 size() 返回当前队列中元素个数
清空队列 clear() O(n) 移除所有元素