91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

C++的priority_queue怎么使用

小億
85
2023-07-07 10:52:57
欄目: 編程語言

priority_queue 是C++標準庫中的一個容器適配器,它提供了一個優先級隊列的實現。下面是使用 priority_queue 的一些基本步驟:

  1. 包含頭文件:#include <queue>

  2. 定義優先級隊列:std::priority_queue

std::priority_queue<int> pq; // 創建一個默認的優先級隊列,默認是大頂堆
  1. 插入元素:使用 push() 函數將元素插入到優先級隊列中。
pq.push(5); // 將元素5插入到優先級隊列中
pq.push(2); // 將元素2插入到優先級隊列中
pq.push(8); // 將元素8插入到優先級隊列中
  1. 訪問隊列頂部元素:使用 top() 函數可以獲取隊列中的最高優先級元素。
int topElement = pq.top(); // 獲取隊列中的最高優先級元素
  1. 刪除隊列頂部元素:使用 pop() 函數可以刪除隊列中的最高優先級元素。
pq.pop(); // 刪除隊列中的最高優先級元素
  1. 判斷隊列是否為空:使用 empty() 函數可以判斷隊列是否為空。
bool isEmpty = pq.empty(); // 判斷隊列是否為空

需要注意的是,priority_queue 默認是一個大頂堆,即優先級高的元素會被放在隊列的前面。如果想要使用小頂堆,則可以通過傳遞一個比較函數來實現:

std::priority_queue<int, std::vector<int>, std::greater<int>> pq; // 創建一個小頂堆

上述代碼中,std::greater<int> 是一個比較函數對象,用于比較兩個元素的大小。

0
泾阳县| 房山区| 改则县| 塔河县| 金乡县| 礼泉县| 弋阳县| 大港区| 柳江县| 城市| 唐河县| 天祝| 丁青县| 天峨县| 镇赉县| 龙陵县| 邮箱| 湖州市| 临沂市| 紫金县| 贞丰县| 镇巴县| 韩城市| 江油市| 湛江市| 金溪县| 涿州市| 竹北市| 平远县| 云霄县| 塔城市| 大悟县| 通辽市| 剑川县| 古丈县| 沈阳市| 镇康县| 开化县| 府谷县| 乡宁县| 东方市|