数据结构中的队列操作


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

更新于:2019 年 8 月 27 日

580 次查看

开启你的职业生涯

完成课程获取认证

开始
广告