STL初步 優先佇列Priority queue

2021-08-21 16:39:39 字數 1312 閱讀 3115

這個優先到底是如何優先?    和普通佇列區別在哪?

priority_queue<type,

container,functional>

priority_queue,less> q;

priority_queue,less> a=q;

priority_queue,less> b=;

優先佇列中沒有迭代器 ,也沒有clear()操作

懶羊羊也有儲存糧食的習慣。每當他儲存乙份糧食時,他會專門拿出乙個筐來存放。因此,他的倉庫裡有很多很多筐的青草。而我們的懶羊羊又是乙個經常饞嘴的小羊,每當他想吃草時,就會從倉庫裡找出數量最少的一筐草,把它吃掉。可是懶羊羊因為草吃得太多了導致大腦運轉緩慢,所以他不得不向你請求支援,幫他找出他應該吃數量為多少的青草。

【輸入要求】

第一行為乙個正整數n,表示懶羊羊一共進行了n次操作(2<=n<=1000000)

第二行至第n+1行每行表示乙個懶羊羊的操作,當這行形式為 單獨乙個字元'q' 時,表示懶羊羊肚子餓了,要吃掉倉庫裡當前數量最少的那份青草;當這行形式為乙個字元'i' 和乙個整數k時,表示懶羊羊將乙份數量為k的青草存入了倉庫,'i'和k之間用空格隔開。

輸入資料保證每次詢問時倉庫裡都有草可吃且所有操作中懶羊羊至少會吃一次草。

【輸出要求】

每當輸入為'q' 時, 輸出懶羊羊當前吃掉的那份青草的數量是多少。

【輸入樣例】

5

i 5

i 2

q

i 9

q

【輸出樣例】

2

5

#include using namespace std;

int main()

STL 優先佇列

優先佇列 在優先佇列中,優先順序高的元素先出佇列。標準庫預設使用元素型別的 操作符來確定它們之間的優先順序關係。優先佇列的第一種用法,也是最常用的用法 priority queue qi 通過 操作符可知在整數中元素大的優先順序高。故示例1 中輸出結果為 9 6 5 3 2 第二種方法 在示例1 中...

優先佇列 stl

priority queue預設頂部是最大值 1 優先佇列的定義 包含標頭檔案 queue.h functional.h 可以使用具有預設優先順序的已有資料結構 也可以再定義優先佇列的時候傳入自定義的優先順序比較物件 或者使用自定義物件 資料結構 但是必須過載好 操作符。2 優先佇列的常用操作 優先...

STL 優先佇列

stl是個很玄學的東西,裡面有一種外掛程式般的操作 優先佇列。主體和佇列差不多,只不過每次push都會把當前的數放在合適的位置。而隊頭就是最大 小 的數。大概可以看成這樣的 queue tail a sort queue 1,queue 1 tail 隊頭最大的優先佇列 priority queue...