• <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 調(diào)用 STL里面的 make_heap(), pop_heap(), push_heap() 算法
            實(shí)現(xiàn),也算是堆的另外一種形式。

            先寫一個(gè)用 STL 里面堆算法實(shí)現(xiàn)的與真正的STL里面的 priority_queue  用法相
            似的 priority_queue, 以加深對 priority_queue 的理解



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


            priority_queue 對于基本類型的使用方法相對簡單。
            他的模板聲明帶有三個(gè)參數(shù),priority_queue<Type, Container, Functional>
            Type 為數(shù)據(jù)類型, Container 為保存數(shù)據(jù)的容器,F(xiàn)unctional 為元素比較方式。
            Container 必須是用數(shù)組實(shí)現(xiàn)的容器,比如 vector, deque 但不能用 list.
            STL里面默認(rèn)用的是 vector. 比較方式默認(rèn)用 operator< , 所以如果你把后面?zhèn)z個(gè)
            參數(shù)缺省的話,優(yōu)先隊(duì)列就是大頂堆,隊(duì)頭元素最大。
            看例子




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



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


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

            例子:


             

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

            評論:
            # re: priority_queue用法 2009-06-24 17:26 | superlong
            前來學(xué)習(xí)C++ 東西不錯(cuò)  回復(fù)  更多評論
              
            # re: priority_queue用法 2009-06-26 18:30 | gnaggnoyil
            騷啊......寫Pascal還得自己寫......  回復(fù)  更多評論
              
            # re: priority_queue用法 2009-10-26 18:27 | huangzhifei
            好東西,牛B
            Orz
            …………  回復(fù)  更多評論
              
            # re: priority_queue用法 2011-05-21 10:56 | l流
            不錯(cuò)哦   回復(fù)  更多評論
              
            # re: priority_queue用法 2011-12-20 22:05 | zz_lizhen
            好文章!對我很有幫助!學(xué)習(xí)了。  回復(fù)  更多評論
              
            # re: priority_queue用法 2012-12-05 07:02 | S.飛翔
            謝謝,很有幫助  回復(fù)  更多評論
              
            # re: priority_queue用法 2012-12-11 15:18 | abc
            贊!  回復(fù)  更多評論
              

            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            久久ZYZ资源站无码中文动漫| AV无码久久久久不卡蜜桃 | 久久久精品国产亚洲成人满18免费网站| 精品久久久噜噜噜久久久| 亚洲一区二区三区日本久久九| 精品久久久久久无码人妻热| 日韩久久久久中文字幕人妻| 亚洲中文精品久久久久久不卡| 久久综合给合久久狠狠狠97色 | 麻豆av久久av盛宴av| 久久人人爽人人爽人人片av高请| 国产精品久久久久jk制服| 国产成人综合久久精品尤物| 国产成人综合久久精品红 | 一本伊大人香蕉久久网手机| 日韩影院久久| 国产精品久久久久久久久免费 | 久久精品草草草| 久久午夜免费视频| 国产精品欧美久久久久天天影视 | 国产精品成人99久久久久91gav| 久久强奷乱码老熟女网站| 国产精品久久久久久久午夜片| 蜜臀av性久久久久蜜臀aⅴ麻豆| 国产精品永久久久久久久久久| 人妻无码αv中文字幕久久| 久久人搡人人玩人妻精品首页 | 色欲综合久久中文字幕网| 久久99精品国产麻豆不卡| 久久精品亚洲日本波多野结衣| 婷婷久久五月天| 久久综合九色综合久99| 国产免费久久久久久无码| 99久久婷婷国产综合亚洲| 色综合久久无码五十路人妻| 亚洲精品国产第一综合99久久 | 中文字幕亚洲综合久久| 97久久综合精品久久久综合| 亚洲va久久久噜噜噜久久狠狠| 模特私拍国产精品久久| 伊人久久成人成综合网222|