map을 key값이 아닌 value 기준으로 정렬해봅니다.
map의 요소들을
value값을 기준으로 정렬해봅니다.
Map의 기본 정렬상태
map은
key값을 기준으로 오름차순 정렬되어 있습니다.
- 내림차순으로 정렬하기를 원한다면
- key값이 int 인경우 맵을 선언시
gretaer<int>비교 함수를 넣어주면 됩니다.
value값으로 정렬하기
정확히는
map을 정렬하는 것이 아니고, map의 요소들을value값을 기준으로 정렬합니다.
- 두단계로 진행이 되어야합니다.
- [1]
map을vector로 이동 - [2]
vector를 second 기준으로 정렬
map을 vector로 이동
map의 key value가
<int, int>일때
1 | |
value 기준 비교 함수 작성
map의 key value가
<int, int>일때
1 | |
정렬
map의 key value가
<int, int>일때
1 | |
예제 코드
1 | |
결과
1 | |
Reference
- http://www.cplusplus.com/reference/