标签:
1,队列的特点是先进先出,通常把队列比喻为排队买饭,先排队的人先买到饭,;
2,优先队列不同,它是根据队列元素的优先权,优先权大的先被取到;
3,一些操作函数:
enpty();如果队列为空,返回为真;
top();返回优先队列队顶元素;
pop();删除队顶元素;
push();添加元素到队列里面;
size();返回元素的个数
4,优先队列的定义:
头文件: #include<queue>
定义:
<1>
priority_queue<int> q;默认是从大到小进行排序
<2>
struct cmp { operator ()(int x,int y) { return x>y; } };
priority_queue<int,vector<int>,cmp> q; //其中第二个参数是容器,第三个参数是比较函数这样优先队列就从小到大,进行排序;
3,自定义进行排序
struct node { friend bool operator> (node n1, node n2) { return n1.priority > n2.priority; } }这样优先队列按照权值得大小进行排序
标签:
原文地址:http://blog.csdn.net/qq_qingtian/article/details/43907751