본문 바로가기

언어 공부/C++

priority queue 사용법 정리

priority queue 사용법 정리

 

pair 1개 사용하기

priority_queue<pair<int, int>> pq;

 

pair 2개 사용하기

priority_queue<pair<int, pair<int,int>>> pq;

 

 

오름차순 정렬

priority_queue<pair<int, pair<int,int>>, vector<pair<int, pair<int,int>>>, greater<pair<int,pair<int,int>>>> pq;

내림차순 정렬

priority_queue<pair<int, pair<int,int>>, vector<pair<int, pair<int,int>>>, less<pair<int,pair<int,int>>>> pq;

greater, less 대신 사용자 지정 compare 적용하려면 아래처럼 하면 된다.

pair 1개의 경우

struct compare {
	bool operator()(pair<int, int>a, pair<int, int> b) {
		return a.second > b.second;
	}
};

 

pair 2개의 경우

struct compare {
	bool operator()(pair<pair<int, int>,int>a, pair<pair<int, int>,int>b) {
		return a.second > b.second;
	}
};

 

 

priority queue 문제 -> 백준 1753번: 최단경로

2022.05.28 - [코딩테스트 연습/Baekjoon] - [Baekjoon] 백준 1753번: 최단경로 (c++)

'언어 공부 > C++' 카테고리의 다른 글

에라토스테네스의 체  (0) 2022.05.28
[C++] stoi, stof, atoi, c_str  (0) 2022.05.21