在C++中,優先級隊列是一個STL容器,它基于堆數據結構實現并根據元素的優先級進行排序。可以使用priority_queue
類來創建和操作優先級隊列。
以下是一個簡單的示例,演示如何創建和使用優先級隊列:
#include <iostream>
#include <queue>
int main() {
std::priority_queue<int> pq; // 創建一個空的優先級隊列
pq.push(30); // 將元素30插入優先級隊列
pq.push(10); // 將元素10插入優先級隊列
pq.push(20); // 將元素20插入優先級隊列
std::cout << "優先級隊列中的元素:";
while (!pq.empty()) {
std::cout << pq.top() << " "; // 獲取并輸出隊列中的頂部元素
pq.pop(); // 刪除隊列中的頂部元素
}
return 0;
}
在這個示例中,首先創建一個priority_queue
對象pq
,然后使用push()
方法將元素插入優先級隊列。最后,使用top()
方法獲取隊列中的頂部元素,并使用pop()
方法刪除該元素。
運行以上代碼,輸出結果為:
優先級隊列中的元素:30 20 10
通過這種方式,可以很容易地使用C++中的優先級隊列。