建立 queue
#include <queue> : 引入 queue
queue<dataType> q : 宣告
常用功能
q.push(val) : 將元素(val) 加到尾巴
q.pop() : 將第一個元素移除
q.back() : 回傳最後一個值 (tail)
q.front() : 回傳第一個值 (head)
q.size() : queue 的大小
q.empty() : 判斷 queue 是不是空的
注意事項
q.pop() 只會移除元素,不會回傳值;若需要值,需先用 q.front() 取得。
- 如果對空的 queue 呼叫
.pop() / .front() / .back() 會造成 segmentation fault。
- queue 不提供 iterator,因此無法直接遍歷或存取中間元素,只能透過 front / back 操作。
使用範例 :
#include <iostream>
#include <queue>
using namespace std;
int main(){
queue<int> q;
q.push(1); // q = {1}
q.push(5); // q = {1, 5}
q.push(3); // q = {1, 5, 3}
cout<<q.front()<<"\n"; // 1
cout<<q.back()<<"\n"; // 3
cout<<q.size()<<"\n"; // 3
q.pop(); // q = {5, 3}
cout<<q.front()<<"\n"; // 5
cout<<q.back()<<"\n"; // 3
cout<<q.size()<<"\n"; // 2
cout<<q.empty()<<"\n"; // 0
}