queue
是具有 FIFO (First In, First Out) 特性的容器配接器,應用在有先進先出的情形。
需要引入的標頭檔: <queue>
# 初始化 queue
#include <queue> | |
queue<int> q; |
# 加入元素
把元素加進 queue 的尾部使用 push()
queue<int> q; | |
q.push(1); | |
q.push(2); | |
q.push(3); |
q = [1, 2, 3]
# 取出元素
把元素從 queue 頭部取出用 pop()
,注意取出會將該元素從 queue 移除。
queue<int> q; | |
q.push(1); | |
q.push(2); | |
q.push(3); | |
q.pop(); |
q = [2, 3]
# 取得元素
# front()
取得 queue 的最頭部的元素使用 front()
,注意取得並不會將該元素從 queue 移除。
queue<int> q; | |
q.push(1); | |
q.push(2); | |
q.push(3); | |
cout << "front: " << q.front(); |
front: 1
# back()
取得 queue 的最尾巴的元素使用 back()
。
queue<int> q; | |
q.push(1); | |
q.push(2); | |
q.push(3); | |
cout << "back: " << q.back(); |
back: 3
# 取得 queue 長度
取得 queue 目前裡面有幾個元素使用 size()
。
queue<int> q; | |
q.push(1); | |
q.push(2); | |
q.push(3); | |
cout << "size: " << q.size(); |
size: 3
# 清空 queue
queue<int> q; | |
q.clear(); |
# 確認 queue 是否為空
確認 queue 是否為空使用 empty()
queue<int> q; | |
q.clear(); | |
if (q.empty()) cout << "empty"; | |
else cout << "Not empty"; |
empty
# 參考資料
- https://shengyu7697.github.io/std-queue/