priority_queue 优先队列 hdu裸题。

优先队列:可以当做一个堆用,对进入此结构的类型,可以找队首的元素。

开库:#include<queue>

定义: priority_queue<type> Q;

type:int类型  priority<int> Q; 默认Q.top为队列中最大的;

当我们要在队列中放入其他类型时,我们要用struct 在其中定义 operator < ;

结构如下:

定义 <int> Q.top() 为最小;

struct Point

{

  int i;

  bool operator < (const Point &A) const{

    return A.i<i;

  }

}

priority_queue<Point>Q;

 

查找队首:Q.top();

检查队列是否为空:Q.empty();

弹出队首:Q.pop();

队列清空:while(!Q.empty())  Q.pop();

 

posted @ 2014-11-02 21:27  endl  阅读(264)  评论(0编辑  收藏  举报