- ๋ด๋ฆผ์ฐจ์ less<>๊ฐ default
- ๋งจ ์ฒซ๋ฒ์งธ ์ธ์๋ pq.top() ์ผ๋ก ์ ๊ทผ
- X๋ ์๋ฃํ์ผ ๋, ์ค๋ฆ์ฐจ์ ์ฐ์ ์์ ํ๋
๐ priority_queue<X, vector<X>, greater<X>> pq;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
#include <iostream>
#include <queue>
using namespace std;
typedef pair<int, int> p;
priority_queue<int> pq; // ๋ด๋ฆผ์ฐจ์ default
priority_queue<int, vector<int>, less<int>> pq1; // ๋ด๋ฆผ์ฐจ์ default
priority_queue<int, vector<int>, greater<int>> pq2; // ์ค๋ฆ์ฐจ์
// priority_queue<X, vector<X>, greater<X>> pq3; X๋ ์๋ฃํ, pair๋ ์๋์ ๋ ฌ
priority_queue<pair<int, p>, vector<pair<int, p>>, greater<pair<int, p>>> pq3; // ์ค๋ฆ์ฐจ์
int main() {
pq.push(9); // 9 8 7 5 4 1
pq.push(4);
pq.push(5);
pq.push(7);
pq.push(8);
pq.push(1);
while (!pq.empty()) {
printf("%d ", pq.top()); // queue ์ ๋ค๋ฅด๊ฒ q.front()๊ฐ ์๋๋ผ pq.top();
pq.pop();
}
printf("\n");
pq1.push(9); // 9 8 7 5 4 1
pq1.push(4);
pq1.push(5);
pq1.push(7);
pq1.push(8);
pq1.push(1);
while (!pq1.empty()) {
printf("%d ", pq1.top());
pq1.pop();
}
printf("\n");
pq2.push(9); // 1 4 5 7 8 9
pq2.push(4);
pq2.push(5);
pq2.push(7);
pq2.push(8);
pq2.push(1);
while (!pq2.empty()) {
printf("%d ", pq2.top());
pq2.pop();
}
printf("\n");
pq3.push({ 1, {1, 1} }); // 1 1 1
pq3.push({ 9, {1, 1} }); // 5 2 3
pq3.push({ 5, {4, 3} }); // 5 4 2
pq3.push({ 5, {4, 2} }); // 5 4 3
pq3.push({ 8, {2, 1} }); // 8 0 1
pq3.push({ 8, {0, 1} }); // 8 2 1
pq3.push({ 5, {2, 3} }); // 9 1 1
while (!pq3.empty()) {
printf("%d %d %d\n", pq3.top().first, pq3.top().second.first, pq3.top().second.second);
pq3.pop();
}
return 0;
}
|
cs |
'๐ > C++' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[C++] ํ์ ์ง์ ์, ์์ ์ง์ ์ (0) | 2021.01.13 |
---|---|
[C++] cin, cout ์๊ฐ ์ด๊ณผ ๋ฌธ์ ํด๊ฒฐ (0) | 2020.10.16 |
[C++] ๋ฐฐ์ด๋ณต์ฌ memcpy, copy (0) | 2020.03.23 |
[C++] map iterator(๋ฐ๋ณต์) ํ์ฉ (0) | 2020.03.23 |
[C++] string ๋ฉ์๋ ์ ๋ฆฌ (0) | 2020.03.17 |
๋๊ธ