C ++ 라이브러리-<대기열>
대기열 소개
큐는 FIFO (선입 선출) 컨텍스트에서 작동하도록 설계된 데이터 구조입니다. 큐 요소로부터 삽입되어 후방 단부 삭제됨 프론트 엔드.
큐 클래스는 컨테이너 어댑터입니다. 컨테이너는 동일한 유형의 데이터를 보유하는 개체입니다. 다른 시퀀스 컨테이너에서 대기열을 만들 수 있습니다. 컨테이너 어댑터는 반복자를 지원하지 않으므로 데이터 조작에 사용할 수 없습니다. 그러나 데이터 삽입 및 삭제를 위해 각각 push () 및 pop () 멤버 함수를 지원합니다.
정의
다음은 <queue> 헤더 파일의 std :: queuer 정의입니다.
template <class T, class Container = deque<T> > class queue;
매개 변수
T − 포함 된 요소의 유형.
T는 사용자 정의 유형을 포함한 다른 데이터 유형으로 대체 될 수 있습니다.
Container − 기본 컨테이너 개체의 유형.
회원 유형
다음 멤버 유형은 멤버 함수에 의해 매개 변수 또는 리턴 유형으로 사용될 수 있습니다.
Sr. 아니. | 회원 유형 | 정의 |
---|---|---|
1 | 값 _ 유형 | T (템플릿의 첫 번째 매개 변수) |
2 | container_type | 템플릿의 두 번째 매개 변수 |
삼 | 크기 유형 | size_t |
4 | 참고 | 값 _ 유형 & |
5 | const_reference | const 값 _ 유형 & |
6 | 차이 _ 유형 | ptrdiff_t |
<queue>의 함수
다음은 <queue> 헤더의 모든 메소드 목록입니다.
생성자
Sr. 아니. | 방법 및 설명 |
---|---|
1 | queue :: queue 기본 생성자 요소가없는 빈 큐 개체를 생성합니다. |
2 | 큐 :: 큐 초기화 생성자 큐 오브젝트를 구성하고 ctnr 사본으로 내부 컨테이너를 지정합니다 . |
삼 | queue :: queue 이동 생성자 이동 시맨틱을 사용하여 other의 내용으로 큐를 구성합니다. |
4 | queue :: queue 복사 생성자 기존 큐 other 에 존재하는 각 요소의 사본으로 큐를 구성 합니다. |
폐물 소각로
Sr. 아니. | 방법 및 설명 |
---|---|
1 | queue :: ~ queue 컨테이너 메모리 할당을 해제하여 큐를 삭제합니다. |
회원 기능
Sr. 아니. | 방법 및 설명 |
---|---|
1 | 대기열 :: 뒤로 대기열의 마지막 요소에 대한 참조를 반환합니다. |
2 | queue :: emplace 큐 끝에 새 요소를 구성하고 삽입합니다. |
삼 | queue :: empty 큐가 비어 있는지 여부를 테스트합니다. |
4 | queue :: front 큐의 첫 번째 요소에 대한 참조를 반환합니다. |
5 | queue :: operator = 사본 버전 이전 콘텐츠를 교체하여 새 콘텐츠를 대기열에 할당합니다. |
6 | queue :: operator = 버전 이동 이전 콘텐츠를 교체하여 새 콘텐츠를 대기열에 할당합니다. |
7 | 대기열 :: 팝 큐의 앞 요소를 제거합니다. |
8 | 큐 :: 푸시 복사본 버전 대기열 끝에 새 요소를 삽입합니다. |
9 | 큐 :: 푸시 이동 버전 대기열 끝에 새 요소를 삽입합니다. |
10 | 대기열 :: 크기 큐에있는 총 요소 수를 반환합니다. |
11 | queue :: swap 대기열의 내용을 다른 대기열의 내용과 교환합니다. |
비 멤버 오버로드 함수
Sr. 아니. | 방법 및 설명 |
---|---|
1 | 연산자 == 두 큐가 같은지 여부를 테스트합니다. |
2 | 연산자! = 두 큐가 같은지 여부를 테스트합니다. |
삼 | 연산자 < 첫 번째 큐가 다른 큐보다 작은 지 여부를 테스트합니다. |
4 | 연산자 <= 첫 번째 큐가 다른 큐보다 작거나 같은지 여부를 테스트합니다. |
5 | 연산자> 첫 번째 큐가 다른 큐보다 큰지 여부를 테스트합니다. |
6 | 연산자> = 첫 번째 큐가 다른 큐보다 크거나 같은지 여부를 테스트합니다. |
7 | 교환 두 큐의 내용을 교환합니다. |
priority_queue 소개
우선 순위 큐는 우선 순위를 보유하는 큐 데이터 구조입니다. 우선 순위 큐는 요소가 임의의 순서로 삽입 될 수 있고 항상 최대 힙 요소가 먼저 검색 되는 힙 데이터 구조와 유사합니다 .
정의
다음은 <queue> 헤더 파일의 std :: priority_queue에 대한 정의입니다.
template <class T, class Container = vector<T>,
class Compare = less<typename Container::value_type> < class priority_queue;
매개 변수
T − 포함 된 요소의 유형.
T는 사용자 정의 유형을 포함한 다른 데이터 유형으로 대체 될 수 있습니다.
Container − 기본 컨테이너 개체의 유형.
Compare − priority_queue를 정렬하는 데 사용할 비교 객체.
두 인수를 비교할 수있는 함수 포인터 또는 함수 객체 일 수 있습니다.
회원 유형
다음 멤버 유형은 멤버 함수에 의해 매개 변수 또는 리턴 유형으로 사용될 수 있습니다.
Sr. 아니. | 회원 유형 | 정의 |
---|---|---|
1 | 값 _ 유형 | T (템플릿의 첫 번째 매개 변수) |
2 | container_type | 템플릿의 두 번째 매개 변수 |
삼 | 크기 유형 | size_t |
4 | 참고 | 값 _ 유형 & |
5 | const_reference | const 값 _ 유형 & |
6 | 차이 _ 유형 | ptrdiff_t |
<queue>의 함수
다음은 <queue> 헤더의 모든 메소드 목록입니다.
생성자
Sr. 아니. | 방법 및 설명 |
---|---|
1 | priority_queue :: priority_queue 기본 생성자 요소가없는 빈 priority_queue를 생성합니다. |
2 | priority_queue :: priority_queue 초기화 생성자 priority_queue 객체를 생성하고 ctnr 복사본으로 내부 컨테이너를 할당합니다 . |
삼 | priority_queue :: priority_queue 범위 생성자 처음부터 마지막까지의 범위에있는 요소 수만큼 priority_queue를 생성합니다. |
4 | priority_queue :: priority_queue 이동 생성자 이동 시맨틱을 사용하여 other의 컨텐츠로 priority_queue를 구성합니다. |
5 | priority_queue :: priority_queue 복사 생성자 기존 priority_queue other에 존재하는 각 요소의 사본으로 priority_queue를 구성합니다. |
폐물 소각로
Sr. 아니. | 방법 및 설명 |
---|---|
1 | priority_queue :: ~ priority_queue 컨테이너 메모리 할당을 해제하여 priority_queue를 삭제합니다. |
회원 기능
Sr. 아니. | 방법 및 설명 |
---|---|
1 | priority_queue :: emplace priority_queue에 정렬 된 순서로 새 요소를 구성하고 삽입합니다. |
2 | priority_queue :: empty pritority_queue가 비어 있는지 여부를 테스트합니다. |
삼 | priority_queue :: operator = 사본 버전 이전 콘텐츠를 대체하여 priority_queue에 새 콘텐츠를 할당합니다. |
4 | priority_queue :: operator = 버전 이동 이전 콘텐츠를 대체하여 priority_queue에 새 콘텐츠를 할당합니다. |
5 | priority_queue :: pop priority_queue의 앞 요소를 제거합니다. |
6 | priority_queue :: push copy 버전 정렬 된 순서로 새 요소를 삽입합니다. |
7 | priority_queue :: push 이동 버전 정렬 된 순서로 새 요소를 삽입합니다. |
8 | priority_queue :: size priority_queue에있는 총 요소 수를 반환합니다. |
9 | priority_queue :: swap priority_queue의 내용을 다른 priority_queue의 내용으로 교환합니다. |
10 | priority_queue :: top priority_queue의 첫 번째 요소에 대한 참조를 반환합니다. |
비 멤버 오버로드 함수
Sr. 아니. | 방법 및 설명 |
---|---|
1 | 교환 priority_queue의 내용을 다른 priority_queue의 내용으로 교환합니다. |