数据结构中的队列操作
队列是先进先出的数据结构。队列被用于不同领域的图遍历算法广度优先搜索等。队列有一些原始操作。我们将在此处查看队列的这些操作,并使用队列 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
广告