資料結構中的佇列操作
佇列是先進先出的資料結構。佇列被用於不同領域的圖遍歷演算法廣度優先搜尋等。佇列有一些原始操作。我們將在此處檢視佇列的這些操作,並使用佇列 ADT 檢視一個示例。
ADT(抽象資料型別)是一種特殊的資料型別,其行為由一組值和一組操作定義。關鍵字“抽象”用於我們可使用這些資料型別,我們可執行不同的操作。但這些操作的工作方式對使用者而言是完全隱藏的。ADT 由原始資料型別構成,但操作邏輯是隱藏的。
以下是佇列 ADT 的一些操作或函式。
- isFull(),此函式用於檢查佇列是否已滿
- isEmpry(),此函式用於檢查佇列是否為空
- enqueue(x),此函式用於將 x 推送至佇列末尾
- delete(),此函式用於從前端刪除一個元素
- front(),此函式用於獲取佇列的最前端元素
- size(),此函式用於獲取佇列中存在的元素數量
示例
#include<iostream> #include<queue> using namespace std; main(){ queue<int> que; if(que.empty()){ cout << "Queue is empty" << endl; } else { cout << "Queue is not empty" << endl; } //insert elements into queue que.push(10); que.push(20); que.push(30); que.push(40); que.push(50); cout << "Size of the queue: " << que.size() << endl; //delete and dispay elements while(!que.empty()) { int item = que.front(); // read element from first position que.pop(); cout << item << " "; } }
輸出
Queue is empty Size of the queue: 5 10 20 30 40 50
廣告