본문 바로가기

Algorithm

[C++] 우선순위 큐(PRIORITY_QUEUE)

핵심 요약

  • 우선 순위에 따라 정렬된 queue이다.
  • heap으로 구현되어 있어, 특정 원소를 push할 때 생기는 정렬의 시간 복잡도는 logN에 실현된다.

헤더파일 및 선언

#include <queue> //<priority_queue>라는 헤더파일을 따로 사용하지 않는다.

priority_queue<자료형, Container, 비교함수> 변수명; //선언한 자료형 변수들을 비교함수에 따라 정렬.

priority_queue<int, vector<int>, greater<int>> pq; //올림차순, 가장 앞에 제일 작은 수가 오게된다.
priority_queue<int> pq; //내림차순, 가장 앞에 제일 큰 수가 오게된다.

관련 함수(삽입, 삭제 등)

priority_queue<int> pq;

pq.push(변수); //변수를 넣는다.

pq.pop(); //맨 앞의 원소를 제거.

pq.top(); //맨 앞의 원소를 반환.

pq.empty(); //비어있을 경우 true, 원소가 하나라도 있을경우 false를 리턴한다.

pq.size(); //크기를 리턴한다.

'Algorithm' 카테고리의 다른 글

[C++] 페어(PAIR)  (0) 2023.09.30
[C++] 데큐(DEQUE)  (0) 2023.09.30
[C++] 스택(STACK)  (0) 2023.09.30
[C++] 자료형에 따른 숫자 범위  (0) 2023.09.30
[C++] 구조체(STRUCT)  (0) 2023.09.30