posted by 구로보루 2018. 4. 12. 19:34

 우선순위 큐는 기본은 선입선출 방식의 큐 컨테이너이지만 항상 조건에 따라 정렬된 순서로 담아두는 큐이다. 가령 내림차순이 조건이라면 선입선출의 방식에 따라 항상 가장 앞에 있는 제일 큰 원소를 접근하게 된다. 

 

priority_queue<T, Container = vector<T>, Compare = less<T>>

T : 원소의 타입

Container : 우선순위 큐를 구현하는 데 사용되는 기본 형식으로 생략하면 vector가 된다.

Compare : 기본 순서 조건자로 less<T>는 내림차순 정렬이다.

-> 큐는 컨테이너 어뎁터이기 때문에 front, push_back, pop_front, empty, size 연산만 할 수 있다면 어떤 컨테이너라도 지정할 수 있다.

 

※ 컨테이너 어뎁터 : 순차열 컨테이너를 다른 기능을 제공하는 컨테이너로 정의하기 위해 래핑하는 클래스 템플릿

 

 멤버 함수

 push

 원소를 삽입. 정해진 위치에 넣기 위해 정렬연산이 동작

 emplace

 윈소를 내부에서 생성해 삽입. 정렬연산 동작

 top

 우선순위 큐의 첫 번째 원소 참조 반환

 pop

 우선순위 큐의 첫 번째 원소 제거

 size

 우선순위 큐에 있는 원소의 개수 반환 

 empty

 우선순위 큐에 원소가 없으면 true 반환

 swap

 두 컨테이너의 모든 원소 교환

'공부 > C++(STL)' 카테고리의 다른 글

queue 컨테이너  (0) 2018.04.10
stack 컨테이너  (0) 2018.04.05
forward_list 컨테이너  (0) 2018.04.03
list 컨테이너  (0) 2018.04.02
deque 컨테이너  (0) 2018.03.30
posted by 구로보루 2018. 4. 10. 14:08

 큐는 선입선출 방식의 컨테이너로 새 원소는 뒤에만 추가되고 앞에서부터 제거할 수 있는 컨테이너이다.

 

queue<T, Container = deque<T>>

T : 원소의 타입

Container : 큐를 구현하는 데 사용되는 기본 형식으로 생략하면 deque가 된다.

-> 큐는 컨테이너 어뎁터이기 때문에 front, back, push_back, pop_front, empty, size 연산만 할 수 있다면 어떤 컨테이너라도 지정할 수 있다.

 

※ 컨테이너 어뎁터 : 순차열 컨테이너를 다른 기능을 제공하는 컨테이너로 정의하기 위해 래핑하는 클래스 템플릿

 

 멤버 함수

 front

 큐에 첫 번째 원소 참조 반환

 back

 큐에 마지막 원소 참조 반환

 push

 큐의 끝에 원소 추가. 기반 컨테이너의 push_back함수 사용

 pop

 큐에서 첫 번째 원소 삭제

 size

 큐에 있는 원소의 개수 반환 

 empty

 큐에 원소가 없으면 true 반환

 emplace

 규의 끝에 원소를 내부에서 생성에 추가

 swap

 두 컨테이너의 모든 원소 교환

'공부 > C++(STL)' 카테고리의 다른 글

priority_queue 컨테이너  (0) 2018.04.12
stack 컨테이너  (0) 2018.04.05
forward_list 컨테이너  (0) 2018.04.03
list 컨테이너  (0) 2018.04.02
deque 컨테이너  (0) 2018.03.30
posted by 구로보루 2018. 4. 5. 19:08

 스텍은 후입선출 방식의 컨테이너로 원소들이 차곡차곡 쌓이고 뺄때는 위에서 부터 빼는 형식의 컨테이너이다.

 

stack<T, Container = deque<T>>

T : 원소의 타입

Container : 스택을 구현하는 데 사용되는 기본 형식으로 생략하면 deque가 된다.

-> 스택은 컨테이너 어뎁터이기 때문에 back, push_back, pop_back, empty, size 연산만 할 수 있다면 어떤 컨테이너라도 지정할 수 있다.

 

※ 컨테이너 어뎁터 : 순차열 컨테이너를 다른 기능을 제공하는 컨테이너로 정의하기 위해 래핑하는 클래스 템플릿

 

 멤버 함수

 top

 스택 상위에 있는 원소를 참조 반환

 push

 스택 상위에 원소 삽입, 기반 컨테이너의 push_back함수 사용

 pop

 스택 상위에 원소 삭제

 size

 스택에 있는 원소의 개수 반환

 empty

 스택이 비어있으면 true 반환

 emplace

 스택 상위에 원소를 내부에서 생성해 삽입

 swap

 두 컨테이너의 모든 원소 교환

 

'공부 > C++(STL)' 카테고리의 다른 글

priority_queue 컨테이너  (0) 2018.04.12
queue 컨테이너  (0) 2018.04.10
forward_list 컨테이너  (0) 2018.04.03
list 컨테이너  (0) 2018.04.02
deque 컨테이너  (0) 2018.03.30