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/