青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 62  文章 - 96  trackbacks - 0
<2015年5月>
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456

常用鏈接

留言簿(7)

隨筆分類(66)

隨筆檔案(62)

文章分類(31)

文章檔案(32)

友情鏈接

最新隨筆

積分與排名

  • 積分 - 236953
  • 排名 - 108

最新評論

閱讀排行榜

評論排行榜

在優先隊列中,優先級高的元素先出隊列。
標準庫默認使用元素類型的<操作符來確定它們之間的優先級關系。
優先隊列的第一種用法,也是最常用的用法:

priority_queue<int> qi;

通過<操作符可知在整數中元素大的優先級高。
故示例1中輸出結果為:9 6 5 3 2

第二種方法:
在示例1中,如果我們要把元素從小到大輸出怎么辦呢?
這時我們可以傳入一個比較函數,使用functional.h函數對象作為比較函數。

priority_queue<int, vector<int>, greater<int> >qi2;

其中
第二個參數為容器類型。
第二個參數為比較函數。
故示例2中輸出結果為:2 3 5 6 9

第三種方法:
自定義優先級。

struct node
{
    
friend bool operator< (node n1, node n2)
    {
        
return n1.priority < n2.priority;
    }
    
int priority;
    
int value;
};

在該結構中,value為值,priority為優先級。
通過自定義operator<操作符來比較元素中的優先級。
在示例3中輸出結果為:
優先級  值
9          5
8          2
6          1
2          3
1          4
但如果結構定義如下:

struct node
{
    
friend bool operator> (node n1, node n2)
    {
        
return n1.priority > n2.priority;
    }
    
int priority;
    
int value;
};

則會編譯不過(G++編譯器)
因為標準庫默認使用元素類型的<操作符來確定它們之間的優先級關系。
而且自定義類型的<操作符與>操作符并無直接聯系,故會編譯不過。

//代碼清單

#include<iostream>
#include
<functional>
#include
<queue>
using 
namespace std;
struct node
{
    
friend bool operator< (node n1, node n2)
    {
        
return n1.priority < n2.priority;
    }
    
int priority;
    
int value;
};
int main()
{
    
const int len = 5;
    
int i;
    
int a[len= {3,5,9,6,2};
    
//示例1
    priority_queue
<int> qi;
    
for(i = 0; i < len; i++)
        qi.push(a[i]);
    
for(i = 0; i < len; i++)
    {
        cout
<<qi.top()<<" ";
        qi.pop();
    }
    cout
<<endl;
    
//示例2
    priority_queue
<int, vector<int>, greater<int> >qi2;
    
for(i = 0; i < len; i++)
        qi2.push(a[i]);
    
for(i = 0; i < len; i++)
    {
        cout
<<qi2.top()<<" ";
        qi2.pop();
    }
    cout
<<endl;
    
//示例3
    priority_queue
<node> qn;
    node b[
len];
    b[
0].priority = 6; b[0].value = 1
    b[
1].priority = 9; b[1].value = 5
    b[
2].priority = 2; b[2].value = 3
    b[
3].priority = 8; b[3].value = 2
    b[
4].priority = 1; b[4].value = 4

    
for(i = 0; i < len; i++)
        qn.push(b[i]);
    cout
<<"優先級"<<'\t'<<"值"<<endl;
    for(i = 0; i < len; i++)
    {
        cout
<<qn.top().priority<<'\t'<<qn.top().value<<endl;
        qn.pop();
    }
    
return 0;
}
posted on 2007-04-06 02:09 beyonlin 閱讀(57193) 評論(4)  編輯 收藏 引用 所屬分類: C++之路

FeedBack:
# re: 優先隊列用法 2011-03-08 19:57 Sticktotheend
頂  回復  更多評論
  
# re: 優先隊列用法 2014-04-30 09:56 ***
給力!!  回復  更多評論
  
# re: 優先隊列用法 2015-05-14 16:13 tanti
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
      <noscript id="pjuwb"></noscript>
            <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
              <dd id="pjuwb"></dd>
              <abbr id="pjuwb"></abbr>
              欧美激情第一页xxx| 国产美女精品一区二区三区| 日韩一区二区精品| 久久精品国产99精品国产亚洲性色| 国产精品久久久久国产精品日日 | 日韩一级视频免费观看在线| 久热精品在线| 久久成人国产| 伊人色综合久久天天五月婷| 欧美成人一区二区三区片免费| 久久久久久一区二区| 亚洲福利电影| 亚洲日本欧美| 欧美日韩中文字幕在线视频| 一区二区三区欧美在线观看| 亚洲视频免费观看| 国产情人综合久久777777| 欧美亚洲综合久久| 欧美一区免费| 亚洲精品久久久久中文字幕欢迎你 | 亚洲一区在线视频| 国产欧美亚洲日本| 玖玖玖国产精品| 欧美激情久久久久久| 中文日韩在线| 久久av资源网站| 最新成人在线| 亚洲欧美日韩国产一区| 黄色日韩网站视频| 依依成人综合视频| 亚洲日本成人| 国产日韩精品综合网站| 欧美不卡在线视频| 久久久久久网| 亚洲欧美日韩一区二区| 另类av一区二区| 亚洲免费中文| 免费日韩一区二区| 欧美亚洲自偷自偷| 欧美精品尤物在线| 久久久久久综合| 欧美日韩亚洲综合在线| 久久久一二三| 国产精品国产自产拍高清av| 欧美成人dvd在线视频| 欧美日韩高清在线播放| 久久影院亚洲| 国产九九精品视频| 久久久久久成人| 欧美三区在线视频| 欧美高清视频在线观看| 国产亚洲精品aa| 一二三区精品| 亚洲国产三级网| 久久精品免费播放| 亚洲你懂的在线视频| 欧美顶级大胆免费视频| 久久香蕉国产线看观看av| 欧美日一区二区在线观看 | 亚洲欧美欧美一区二区三区| 亚洲大片在线观看| 亚洲字幕一区二区| 在线一区二区日韩| 久久精品日韩一区二区三区| 欧美性事免费在线观看| 欧美黄色成人网| 激情国产一区| 亚洲精品亚洲人成人网| 在线成人黄色| 久久精品国产77777蜜臀| 午夜精品一区二区三区在线视| 久久中文欧美| 久久一区二区三区国产精品 | 亚洲一区二区少妇| 另类尿喷潮videofree| 久久综合中文色婷婷| 欧美日韩直播| 日韩视频精品在线| 中国成人在线视频| 国产精品久久久一区麻豆最新章节| 蜜桃av一区二区| 一区二区亚洲| 久热精品在线| 亚洲黄色大片| 一区二区视频免费在线观看| 久久久美女艺术照精彩视频福利播放| 欧美午夜女人视频在线| 一区二区三区国产在线| 日韩午夜精品视频| 国产日韩欧美在线播放不卡| 久久蜜臀精品av| 一本到高清视频免费精品| 欧美一区影院| 日韩亚洲国产精品| 国产精品亚洲成人| 欧美华人在线视频| 午夜视频久久久久久| 你懂的国产精品| 亚洲免费影视第一页| 在线观看国产一区二区| 欧美精品在线看| 欧美专区亚洲专区| 9久re热视频在线精品| 久久一区免费| 亚洲综合日韩| 日韩一级精品视频在线观看| 国产偷自视频区视频一区二区| 欧美黑人多人双交| 久久aⅴ乱码一区二区三区| 亚洲精品免费网站| 男人的天堂亚洲在线| 午夜视频一区| 在线亚洲激情| 亚洲国产精品久久久久| 国产欧美日韩一区二区三区| 欧美日韩天天操| 男人的天堂亚洲| 久久九九热免费视频| 午夜精品在线| 亚洲视频一起| 一区二区91| 99这里有精品| 亚洲人成网站精品片在线观看 | 午夜精品国产| 亚洲精品乱码久久久久久日本蜜臀| 国产一区二区按摩在线观看| 欧美日本亚洲视频| 亚洲国产小视频| 久久久久久噜噜噜久久久精品 | 国产亚洲精品久久久久久| 欧美日韩国产精品一卡| 免费在线观看日韩欧美| 久久午夜精品一区二区| 久久久久久久91| 亚洲综合国产| 亚洲尤物在线视频观看| 亚洲日本中文字幕| 亚洲精品日韩在线观看| 亚洲国产成人高清精品| 亚洲成色777777在线观看影院| 黄色一区二区三区| 亚洲第一级黄色片| 最新精品在线| 亚洲美女av网站| 一本色道88久久加勒比精品| 在线一区视频| 亚洲私人影院| 欧美一区二区三区免费在线看| 欧美在线网址| 久久久久久综合网天天| 久久久水蜜桃| 欧美成ee人免费视频| 欧美激情亚洲激情| 亚洲区欧美区| 一区二区三区精品视频| 亚洲自啪免费| 久久人人看视频| 欧美精品自拍| 国产精品美女一区二区| 国产日产精品一区二区三区四区的观看方式 | 亚洲视频免费在线| 欧美资源在线| 蜜臀久久99精品久久久久久9 | 亚洲一区二区在线播放| 先锋亚洲精品| 欧美国产日韩一区二区三区| 亚洲精品国产拍免费91在线| 一区二区三区精品久久久| 欧美亚洲在线| 欧美国产综合视频| 国产精品一区亚洲| 一区二区在线免费观看| 一区二区三区四区国产| 久久久久久一区| 99爱精品视频| 麻豆成人在线| 国产欧美日韩免费| 亚洲精品欧洲精品| 欧美在线91| 亚洲人成在线播放| 欧美一区中文字幕| 欧美日韩小视频| 在线观看中文字幕不卡| 亚洲欧美乱综合| 亚洲国产日本| 久久国产免费| 国产精品国产三级国产专播精品人| 伊人春色精品| 欧美亚洲免费电影| 亚洲精品综合| 欧美a级片一区| 红桃视频成人| 欧美专区亚洲专区| 99国产精品久久久| 久久亚洲图片| 亚洲午夜国产成人av电影男同| 美女视频网站黄色亚洲| 国产亚洲一二三区| 亚洲伊人网站| 夜夜嗨av一区二区三区网页|