1. 程式人生 > 實用技巧 >LeetCode刷題記錄-36

LeetCode刷題記錄-36

普通的佇列是一種先進先出的資料結構,元素在佇列尾追加,而從佇列頭刪除。在優先佇列中,元素被賦予優先順序。當訪問元素時,具有最高優先順序的元素最先刪除。

標頭檔案:#include<queue>

操作:

  • top 訪問隊頭
  • empty 佇列是否為空
  • size 返回佇列元素個數
  • push 插入元素到隊尾
  • pop 彈出隊頭
  • swap 交換內容

定義:

 1 /*
 2 Type 資料型別
 3 Container 容器型別(必須是vector,deque等陣列實現的容器)
 4 Functional 比較方式
 5 */
 6 priority_queue<Type, Container, Functional>
 7
8 //例項 9 //升序佇列 10 priority_queue <int,vector<int>,greater<int> > q; 11 //降序佇列 12 priority_queue <int,vector<int>,less<int> >q; 13 14 //greater和less是std實現的兩個仿函式(就是使一個類的使用看上去像一個函式。其實現就是類中實現一個operator(),這個類就有了類似函式的行為,就是一個仿函式類了)