1. 程式人生 > >STL之priority_queue(優先佇列)

STL之priority_queue(優先佇列)

優先佇列

優先佇列(priority_queue)是一種用來維護由一組元素構成的集合S的資料結構。優先佇列有兩種形式,最大優先佇列和最小優先佇列。最大優先佇列的應用:共享計算機系統的作業排程。最小優先佇列的應用:基於事件驅動的模擬器。

C++中的priority_queue

在C++中,包含了模板,其實便是一個最大優先佇列,下面演示其用法。

#include<iostream>
#include<queue>
#include<cstdio>
#include<cstdlib>
using namespace std;
int main() { priority_queue<int>q; //定義一個優先佇列 for(int i=1;i<=10;i++) q.push(i); //元素如隊 cout<<q.top()<<endl; //返回優先順序最高的元素 q.pop(); //刪除優先順序最高的元素 q.empty(); //判斷佇列是否為空,若為空返回True q.size(); //返回元素的數量 return 0; }