1. 우선순위 큐를 이용한, 내림차순 출력(최대 힙)
#include <bits/stdc++.h>
using namespace std;
priority_queue<int> pQ;
int main() {
pQ.push(2);
pQ.push(6);
pQ.push(5);
pQ.push(1);
pQ.push(4);
pQ.push(3);
for (int i = 1; i <= 6; i++) {
cout << pQ.top() << " ";
pQ.pop();
}
return 0;
}
- C++ 에서는 최대힙이 디폴트 값이다. 따라서 추가적인 조치를 하지 않아도 내림차순으로 출력이 된다.
2. 우선순위 큐를 이용한, 오름차순 출력(최소 힙)
#include <bits/stdc++.h>
using namespace std;
priority_queue<int, vector<int>, greater<>> pQ;
int main() {
pQ.push(2);
pQ.push(6);
pQ.push(5);
pQ.push(1);
pQ.push(4);
pQ.push(3);
for (int i = 1; i <= 6; i++) {
cout << pQ.top() << " ";
pQ.pop();
}
return 0;
}
- priority_queue<int, vector<int>, greater<>> pQ; : 최소 힙을 사용하게 하여, 오름차순으로 출력되게 한다.