在C++中,priority_queue默认是less(这一点和sort相同),但是打印出来的排序序列却是从大到小的,和sort恰恰相反。
#include <iostream>
#include <cstdio>
#include <queue>
using namespace std;
int main()
{
priority_queue<int, vector<int>, greater<int> > q;
for (int i = 1; i <= 10; i++)
{
q.push(i);
}
while (!q.empty())
{
printf("%d ", q.top());
q.pop();
}
return 0;
}