码迷,mamicode.com
首页 > 其他好文 > 详细

优先队列的使用方法

时间:2018-05-13 19:55:15      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:priority   ret   ESS   cto   效果   amp   价格   color   tor   

//优先队列:个位数大的整数优先级小
//分析:优先级  个位数大 < 个位数小
priority_queue<int,vector<int>,cmp> 
struct cmp{
    bool operator()(const int a,const int b)const{
        return a%10>b%10;
    }
};

 

//效果相同,都是数字大的优先级高
priority_queue<int>;
priority_queue<int,vector<int>,less<int> >;

 

//数字小的优先级高 
priority_queue<int,vector<int>,greater<int> >; 

 

结构体优先级设置
方法一: 
struct fruit {
    string name;
    int price;
    //价格高的优先级高 
    friend bool operator<(fruit f1,fruit f2)
    {
        return f1.price<f2.price; 
    }
}; 
或者
struct fruit{
    string name;
    int price;
    //价格低的优先级高 
    friend bool operator<(const fruit& f1,const fruit& f2)
    {
        return f1.price>f2.price;
    }
}; 

 

方法二:
struct fruit{
    string name;
    int price;
}; 
struct cmp{
    //价格高的优先级高 
    bool operator()(fruit f1,fruit f2)
    {
        return f1.price < f2.price;
    }
};
或者
struct fruit{
    string name;
    int price;
}; 
struct cmp{
    bool operator()(const fruit& f1,const fruit& f2)
    {
        return f1.price < f2.price;
    }
};

注意!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

优先队列的本质是堆!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

优先队列的使用方法

标签:priority   ret   ESS   cto   效果   amp   价格   color   tor   

原文地址:https://www.cnblogs.com/zuimeiyujianni/p/9032962.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!