`
boisterous
  • 浏览: 62659 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类

stl priority_queue

阅读更多
简单的使用示例。

view plaincopy to clipboardprint?
#include "stdafx.h"//非vc编译器可去掉 
#include <iostream> 
#include <vector> 
#include <queue> 
 
using namespace std; 
 
//看看priority_queue的声明,模板的第三个参数就是比较规则,规则可以是个函数,也可是个仿函数 
//template < class T, class Container = vector<T>, 
//           class Compare = less<typename Container::value_type> > class priority_queue; 
struct Node  
{  
    int frequery;  
    int tr;  
 
    friend bool operator> (const Node& lhs, const Node& rhs) 
    { 
        return (lhs.frequery > rhs.frequery);  
    } 
};  
 
struct node_greater_comp { 
 
    bool operator()(const Node& lhs, const Node& rhs) const  
    { 
        return lhs.frequery > rhs.frequery; 
    } 
}; 
 
int main()  
{  
    //示例一 
    { 
    priority_queue < Node, vector<Node>, greater<Node> >  q; //仿函数greater中用到operator> 
 
    Node w[10];  
    w[0].frequery=12;  
    w[1].frequery=32;  
    w[2].frequery=34;  
 
    q.push(w[0]);  
    q.push(w[1]);  
    q.push(w[2]);  
 
    while(!q.empty())  
    {  
        cout <<q.top().frequery <<" ";  
        q.pop();  
    }  
    cout <<endl;  
    } 
 
    //示例二 
    { 
    Node w[3];  
    w[0].frequery=12;  
    w[1].frequery=32;  
    w[2].frequery=34;    
     
    priority_queue < Node, vector<Node>, node_greater_comp >  q(w,w+3); //仿函数node_greater_comp是比较规则 
 
    while(!q.empty())  
    {  
        cout <<q.top().frequery <<" ";  
        q.pop();  
    }  
    cout <<endl;  
    } 
 
    return 0;  
分享到:
评论

相关推荐

    STL中priority_queue

    priority_queue用法,希望对大家会有所帮助

    STL priority_queue(优先队列)详解

    主要介绍了 STL priority_queue(优先队列)详解的相关资料,需要的朋友可以参考下

    【C++入门到精通】C++入门 - priority-queue(STL)优先队列

    priority_queue 源码

    cpp-learn.tar.gz

    priority_queue_learn.cpp queue_learn.cpp set_learn.cpp stack_learn.cpp static_var_in_class.cpp std_except.cpp std_io.cpp stl_alg_learn.cpp string_learn.cpp test_init.cpp type_change.cpp vector_learn....

    STL数据文件的操作类

    压缩包中包括STL数据文件的读取类,包括ASCII格式和Binary格式。

    leetcode2sumc-Cpp-STL-Quick-Help:它包含C++STL用法和快速帮助以及易于理解的注释和示例

    使用priority_queue(即堆)的不同方式 :mount_fuji: 默认声明 priority_queue&lt; int &gt; pq; // creates max-heap priority_queue&lt; int , vector&lt; int &gt;&gt; pq; // creates max-heap 为 priority_queue 编写...

    stl-huffman.rar_The First_huffman_huffman priority

    implement huffman algorithm with stl priority-queue, first you must have the file, then the result is saved

    细讲c++ 各种STL容器的应用场合及性能

    c++ std stl各容器的应用场合及性能 map hash_map unordered_map multimap list forward_list vector set hash_set multiset unsorted_set queue deque priority_queue

    C++ STL PBDS库讲解

    这个文档介绍了PBDS库中的一些数据结构,包括rope、priority_queue以及tree的用法。

    stl-views.gdb

    gdb 打印功能扩展 ...# std::priority_queue&lt;T&gt; -- via ppqueue command # std::bitset&lt;n&gt; -- via pbitset command # std::string -- via pstring command # std::widestring -- via pwstring command

    二叉堆(binary heap)

    本人做的一个二叉堆的课件,附带STL中的priority_queue

    STL-基础数据类型的基本用法

    STL-ARR,arry, file,list,map,priority_queue,set,share_ptr,stack,string,template,等基本数据类型

    C++容器类的简单介绍.doc

    1、STL标准容器类简介 标准容器类 说明 顺序性容器 vector 相当与数组,从后面快速的插入与删除,直接访问任何元素 deque 双队列,从前面或后面快速的插入与删除,... priority_queue 最高优先级元素总是第一个出列

    STL代码详细说明

    包含了STL中 dequeue,list,map,multimap,multiset,priority_queue,queue,set,stack,vector等10个代码例子,并列举了各个容器对应的全部函数使用方式,以及函数的调用方式与代码注释,能使您快速掌握STL的...

    C++ STL开发技术导引(第5章)

    第20章 priority_queue优先队列容器 275 20.1 priority_queue技术原理 275 20.2 priority_queue应用基础 278 20.3 本章小结 281 第四篇 C++ STL算法技术 第21章 非变易算法 284 21.1 逐个容器元素for_...

    STL容器 算法 函数表

    该篇分为十一部分,分别是:vector类的主要成员...stack类的主要成员、queue类的主要成员、priority_queue类的组要成员、set类的主要成员、multiset类的主要成员、map类的主要成员、multimap类的主要成员、STL算法函数

    C++ STL 开发技术导引(第6章)

    第20章 priority_queue优先队列容器 275 20.1 priority_queue技术原理 275 20.2 priority_queue应用基础 278 20.3 本章小结 281 第四篇 C++ STL算法技术 第21章 非变易算法 284 21.1 逐个容器元素for_...

    STL-优先队列-队列-栈

    讲STL的栈,队列,优先队列,内有代码清单使用方法等等

    C++ STL开发技术导引(第3章)

    第20章 priority_queue优先队列容器 275 20.1 priority_queue技术原理 275 20.2 priority_queue应用基础 278 20.3 本章小结 281 第四篇 C++ STL算法技术 第21章 非变易算法 284 21.1 逐个容器元素for_...

    MyStl:自己实现STL

    MyStl 实现自己的STL 环境 Microsoft Windows 10 Visual Studio 2015 c++11 要点 模板实现 traits编程技巧 c++11 自定义内存管理 ...顺序容器适配器:stack,queue ...容器适配器:priority_queue 迭代器:反向迭代器

Global site tag (gtag.js) - Google Analytics