Aby uniknąć niejasności, umieszczam poniżej przykład programu, w którym kolejka priorytetowa z biblioteki STL, zawiera minimum na samym początku (ang. top).
#include<iostream>
#include<algorithm>
#include<queue>
#include<cassert>
using namespace std;
typedef pair<int,int> PII; // chwilowa podmiana nazwy typu
int main(void)
{
priority_queue<PII, vector<PII>, greater<PII> > Q; // sprawia, że na szczycie kolejki jest minimum
Q.push(make_pair(3,4));
Q.push(make_pair(2,7));
assert( Q.top() == make_pair(2,7) );
cout << Q.top().first << "," << Q.top().second << endl;
return 0;
}
1 komentarz:
Cześć. Potrzebuję stworzyć taką kolejkę ale nie par tylko trójek intów. I priorytet wg jednego z nich. Można coś takiego zrobić w ogole?
Prześlij komentarz