c++ queue 教學 | 用法及範例

c++ queue 教學

建立 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 不提供 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 
}