• <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>

            priority_queue 調用 STL里面的 make_heap(), pop_heap(), push_heap() 算法
            實現,也算是堆的另外一種形式。

            先寫一個用 STL 里面堆算法實現的與真正的STL里面的 priority_queue  用法相
            似的 priority_queue, 以加深對 priority_queue 的理解



            STL里面的 priority_queue 寫法與此相似,只是增加了模板及相關的迭代器什么的。


            priority_queue 對于基本類型的使用方法相對簡單。
            他的模板聲明帶有三個參數,priority_queue<Type, Container, Functional>
            Type 為數據類型, Container 為保存數據的容器,Functional 為元素比較方式。
            Container 必須是用數組實現的容器,比如 vector, deque 但不能用 list.
            STL里面默認用的是 vector. 比較方式默認用 operator< , 所以如果你把后面倆個
            參數缺省的話,優先隊列就是大頂堆,隊頭元素最大。
            看例子




            如果要用到小頂堆,則一般要把模板的三個參數都帶進去。
            STL里面定義了一個仿函數 greater<>,對于基本類型可以用這個仿函數聲明小頂堆
            例子:



             對于自定義類型,則必須自己重載 operator< 或者自己寫仿函數
            先看看例子:


            自定義類型重載 operator< 后,聲明對象時就可以只帶一個模板參數。
            但此時不能像基本類型這樣聲明
            priority_queue<Node, vector<Node>, greater<Node> >;
            原因是 greater<Node> 沒有定義,如果想用這種方法定義
            則可以按如下方式

            例子:


             

            posted on 2009-06-09 18:00 Darren 閱讀(15800) 評論(7)  編輯 收藏 引用

            評論:
            # re: priority_queue用法 2009-06-24 17:26 | superlong
            前來學習C++ 東西不錯  回復  更多評論
              
            # re: priority_queue用法 2009-06-26 18:30 | gnaggnoyil
            騷啊......寫Pascal還得自己寫......  回復  更多評論
              
            # re: priority_queue用法 2009-10-26 18:27 | huangzhifei
            好東西,牛B
            Orz
            …………  回復  更多評論
              
            # re: priority_queue用法 2011-05-21 10:56 | l流
            不錯哦   回復  更多評論
              
            # re: priority_queue用法 2011-12-20 22:05 | zz_lizhen
            好文章!對我很有幫助!學習了。  回復  更多評論
              
            # re: priority_queue用法 2012-12-05 07:02 | S.飛翔
            謝謝,很有幫助  回復  更多評論
              
            # re: priority_queue用法 2012-12-11 15:18 | abc
            贊!  回復  更多評論
              
            69久久夜色精品国产69| 久久久久亚洲AV综合波多野结衣| 狠狠色丁香久久婷婷综合| 99精品久久久久久久婷婷| 99麻豆久久久国产精品免费| 久久久青草青青国产亚洲免观| 18岁日韩内射颜射午夜久久成人| 91久久精品国产91性色也| 人妻无码精品久久亚瑟影视| 国产成人久久777777| 欧美黑人激情性久久| 久久综合偷偷噜噜噜色| 国内精品伊人久久久久影院对白| 久久亚洲日韩精品一区二区三区| 久久毛片免费看一区二区三区| 国产91久久精品一区二区| 亚洲午夜无码久久久久| 怡红院日本一道日本久久 | 久久久久亚洲AV无码观看| 久久精品这里热有精品| 久久精品一本到99热免费| 久久亚洲熟女cc98cm| 香蕉aa三级久久毛片 | 色99久久久久高潮综合影院| 久久免费线看线看| 久久99精品久久久久久hb无码 | 中文字幕无码免费久久| 国产精品久久久久久久久软件| 久久国产午夜精品一区二区三区| 2021少妇久久久久久久久久| 久久无码人妻一区二区三区午夜| 亚洲国产精品一区二区久久hs| 久久亚洲精品无码aⅴ大香 | 久久99国产精品久久99| 99久久精品国内| 99久久国产热无码精品免费久久久久| AV色综合久久天堂AV色综合在| 国内精品久久久久久99蜜桃| 亚洲国产成人久久精品动漫| 久久久久亚洲AV无码去区首| 国产精品久久久久蜜芽|