C++中"priority_queue"優(yōu)先級隊(duì)列怎么用

這篇文章主要為大家展示了“C++中"priority_queue" 優(yōu)先級隊(duì)列怎么用”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“C++中"priority_queue" 優(yōu)先級隊(duì)列怎么用”這篇文章吧。

10年積累的成都做網(wǎng)站、成都網(wǎng)站制作經(jīng)驗(yàn),可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有赤城免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

C++ 中"priority_queue" 優(yōu)先級隊(duì)列

1. 簡介

標(biāo)準(zhǔn)庫隊(duì)列使用了先進(jìn)先出(FIFO)的存儲和檢索策略. 進(jìn)入隊(duì)列的對象被放置在尾部, 下一個被取出的元素則取自隊(duì)列的首部. 標(biāo)準(zhǔn)庫提供了兩種風(fēng)格的隊(duì)列: FIFO 隊(duì)列(FIFO queue, 簡稱 queue), 以及優(yōu)先級隊(duì)列(priority queue).

priority_queue 允許用戶為隊(duì)列中存儲的元素設(shè)置優(yōu)先級. 這種隊(duì)列不是直接將新元素放置在隊(duì)列尾部, 而是放在比它優(yōu)先級低的元素前面. 標(biāo)準(zhǔn)庫默認(rèn)使用元素類型的 "<" 操作符來確定它們之間的優(yōu)先級關(guān)系. 如需改變大小關(guān)系, 需要使用std::greater<temple>函數(shù), 在functional頭文件中. 

2. 代碼

#include <iostream>    // std::cout 
#include <queue>     // std::priority_queue 
#include <vector>     // std::vector 
#include <functional>  // std::greater 
 
int main () 
{ 
  int myints[]= {10,60,50,20}; 
 
  std::priority_queue<int> intPQueue1 (myints, myints+4); 
  std::priority_queue<int, std::vector<int>, std::greater<int> > 
    intPQueue2 (myints,myints+4); 
 
  std::cout << "less than: " << std::endl; 
  while( !intPQueue1.empty() ){ 
    int pvalue = intPQueue1.top(); 
    std::cout << pvalue << " "; 
    intPQueue1.pop();  
  } 
  std::cout << std::endl; 
 
  std::cout << "bigger than: " << std::endl; 
  while( !intPQueue2.empty() ){ 
    int pvalue = intPQueue2.top(); 
    std::cout << pvalue << " "; 
    intPQueue2.pop();  
  } 
  std::cout << std::endl; 
 
  return 0; 
}

以上是“C++中"priority_queue" 優(yōu)先級隊(duì)列怎么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

網(wǎng)站名稱:C++中"priority_queue"優(yōu)先級隊(duì)列怎么用
當(dāng)前鏈接:http://bm7419.com/article46/pcojhg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、、云服務(wù)器、建站公司、網(wǎng)站制作網(wǎng)站導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)