中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

C++中priority_queue的用法是什么

c++
小億
82
2023-12-27 23:04:25
欄目: 編程語言

在C++中,priority_queue是一個容器適配器,它實現了一個優先級隊列(Priority Queue)。優先級隊列是一種特殊的容器,其中每個元素都有一個優先級。與普通隊列不同,優先級隊列中的元素按照優先級排序,而不是按照插入順序排序。

priority_queue模板類位于頭文件中,可以使用以下代碼包含它:

#include <queue>

priority_queue的常用方法和操作包括:

  1. push(element):將元素插入優先級隊列。
  2. pop():移除優先級隊列中的頂部元素。
  3. top():訪問優先級隊列中的頂部元素。
  4. size():返回優先級隊列中的元素數量。
  5. empty():檢查優先級隊列是否為空。

優先級隊列中的元素默認按照元素類型的"<“運算符進行排序,因此,元素類型必須支持”<"運算符的比較。也可以通過傳遞自定義的比較函數來改變元素的排序規則。

以下是一個使用priority_queue的簡單示例:

#include <iostream>
#include <queue>

int main() {
    std::priority_queue<int> pq;

    pq.push(10);
    pq.push(5);
    pq.push(15);

    std::cout << "Size of priority queue: " << pq.size() << std::endl;
    std::cout << "Top element: " << pq.top() << std::endl;

    pq.pop();

    std::cout << "Size of priority queue after pop: " << pq.size() << std::endl;
    std::cout << "New top element: " << pq.top() << std::endl;

    return 0;
}

此示例創建了一個存儲整數的priority_queue。然后,它插入三個整數并打印出隊列的大小和頂部元素。然后,它從隊列中彈出一個元素并再次打印隊列的大小和新的頂部元素。

輸出為:

Size of priority queue: 3
Top element: 15
Size of priority queue after pop: 2
New top element: 10

0
吉隆县| 东乌珠穆沁旗| 濮阳县| 花垣县| 玉山县| 桓台县| 六安市| 周至县| 微山县| 玛曲县| 东至县| 平乐县| 石泉县| 溧阳市| 含山县| 金乡县| 宽城| 鞍山市| 巨野县| 襄城县| 南岸区| 崇州市| 绵阳市| 石门县| 沁阳市| 泗阳县| 六安市| 黄山市| 鄂温| 昌图县| 平谷区| 龙山县| 宜州市| 屏南县| 改则县| 巴中市| 新巴尔虎右旗| 浦江县| 通州区| 达州市| 两当县|