- 2022tysc1451 的博客
队列
- 2025-4-17 13:25:42 @
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) | 移除所有元素 |