kimyunseok
For Better Code Tomorrow
kimyunseok
전체 방문자
오늘
어제
  • 분류 전체보기 (175)
    • CS (7)
      • 자료구조 (4)
      • Operating System (2)
      • Data Base (1)
      • Network (0)
    • 알고리즘 (119)
      • 개념 (2)
      • Baekjoon (115)
      • Programmers (2)
    • 안드로이드 (36)
      • 개념 (17)
      • 개발 관련 (19)
    • 코딩 (13)
      • C++ (12)
      • Java (1)
      • 기타 (0)
    • 생활 (0)
      • IT (0)
      • 잡담 (0)
      • 후기 (0)

블로그 메뉴

  • 홈
  • 태그

공지사항

인기 글

태그

  • 문법
  • kotlin
  • 알고리즘
  • 취준
  • 다이나믹_프로그래밍
  • 백준
  • BFS
  • 브루트포스
  • 구현
  • 시뮬레이션
  • c++
  • 그래프_탐색_이론
  • 분할_정복
  • do_it
  • 그래프_탐색
  • 너비_우선_탐색
  • 스택
  • 백트래킹
  • 자료구조
  • 안드로이드

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
kimyunseok

For Better Code Tomorrow

[C++] priority_queue STL 비교 구조체 comparator 사용하기
코딩/C++

[C++] priority_queue STL 비교 구조체 comparator 사용하기

2021. 9. 1. 00:02

algorithm STL에 있는 sort() 메서드를 사용할 때에는, 그냥 bool형 비교 메서드 하나만 만들어주면 됐었다.

 

queue STL에 있는 priority_queue를 사용할 때에는

less<>()를 써서 내름차순으로 만들거나

greater<>()를 써서 오림차순으로 만들 수 있다.

그러나 class 형식으로 만들어서 쓰고싶을 때에는

구조체를 만들어서 그 안에 bool형 operator()(A, B)의 형태의 메서드를 만들어 주어야 한다.

 

bool 메서드는 return true일 때 앞 뒤를 바꾼다고 생각하면 된다.

따라서 위처럼 만들 경우 p1의 시간, type에 따라 오름차순으로 정렬된다고 생각하면 된다.

 

pq 선언은 다음처럼 해주면 된다.

'코딩 > C++' 카테고리의 다른 글

[C++] End Of File 처리.  (0) 2021.10.13
[C++] algorithm STL의 sort()와 queue STL의 priority_queue의 정렬 방식의 차이 - less와 greater  (0) 2021.09.01
[C++] 문자열(문자)을 정수형처럼 다루는 메서드  (0) 2021.08.17
[C++] Map 자료구조 사용하기  (0) 2021.08.17
[C++] Comparator 사용시 주의사항  (0) 2021.08.17
    '코딩/C++' 카테고리의 다른 글
    • [C++] End Of File 처리.
    • [C++] algorithm STL의 sort()와 queue STL의 priority_queue의 정렬 방식의 차이 - less와 greater
    • [C++] 문자열(문자)을 정수형처럼 다루는 메서드
    • [C++] Map 자료구조 사용하기
    kimyunseok
    kimyunseok

    티스토리툴바