• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

75번, 79번 priority_queue관련

22.12.13 15:29 작성 조회수 202

0

안녕하세요

75번의 연산자 오버로딩

bool operator<(const Data &b)const{

return when>b.when;

}

로 써서 오름차순으로 만들어 맨 위에꺼를 pop했을때 제일 큰 숫자인 3이 나왔습니다.

하지만 79번의 연산자 오버로딩

bool operator<(const Edge &b)const{

return val>b.val;

}

를 진행 할때는 최소 힙으로 구현이 된다고 하셨고 pop했을때 비용이 가장 적게드는 녀석이 나온다고 했습니다. 어떤게 맞는것인지 이해가 잘 가지않습니다.

답변 1

답변을 작성해보세요.

0

안녕하세요^^

75번의 operator는 정렬의 기준(내림차순, 오름차순)을 정하는 것이고

79번의 operator는 최소힙 또는 최대힙을 만들건지를 정하는 오퍼레이터 입니다. 서로 다른 용도입니다.