priority_queue 简单实例

#include  < iostream >
#include 
< queue >// 有priority_queue
using namespace std;  
class cl
{
      
public :
             
int  i;
             
};
bool operator
> ( const  cl & a,  const  cl  &  b)
{
     return a.i 
<  b.i;    
}
bool operator
< ( const  cl & a, const  cl  & b)
{
     return a.i
> b.i;
}
int  main()
{
    
    
    priority_queue
< cl,vector < cl > ,greater < vector < cl > ::value_type >   >  q;
    cl a;
    
while (cin >> a.i)
    {
        q.push(a);
    }
    
while (!q.empty())
    {
        cout
<< q.top().i << endl;
        q.pop();
    }
    system(
" PAUSE " );
    return 
1 ;
}

你可能感兴趣的:(priority_queue 简单实例)