小顶堆: 小的先出
#include<functional>
#include <queue>
int main()
{
vector<int> v = { 1,2,6,4,5,7,3 };
priority_queue<int, vector<int>, greater<int> > m; //小顶堆
for (int i = 0; i < v.size(); i++)
{
m.push(v[i]);
}
while (m.size())
{
cout << m.top() << endl;
m.pop();
}
return 0;
}
大顶堆: 大的先出
#include<functional>
#include <queue>
int main()
{
vector<int> v = { 1,2,6,4,5,7,3 };
priority_queue<int> m; //默认大顶堆
for (int i = 0; i < v.size(); i++)
{
m.push(v[i]);
}
while (m.size())
{
cout << m.top() << endl;
m.pop();
}
return 0;
}