블로그

[자료구조] 4. STL Queue 본문

프로그래밍/자료구조와 알고리즘

[자료구조] 4. STL Queue

이동헌 2023. 7. 25. 15:52

1. Queue 간단 요약

  Queue는 Stack과 반대로 추가된 순서대로 원소가 빠져나오는 선입선출(FIFO, First In First Out)구조를 가진 자료구조이다. Queue또한 iterator를 지원하지 않아 순회탐색이 불가능하다. STL에서는 Stack과 거의 동일한 함수를 지원한다.

 

2. Queue 구조

- front() : 가장 먼저 추가한 원소

- back() : 가장 마지막에 추가한 원소

- push() : back() 뒤에 원소 추가

- pop() : front()에 해당하는 원소 제거

- size() : Queue의 크기

 

3. Queue 함수 정리

  1) 크기 관련

- empty() : Queue가 비어있다면 true, 아니라면 false 반환

- size() : Queue의 크기 반환

 

  2) 원소 관련

- front() : 가장 먼저 추가한 원소 반환

- back() : 가장 나중에 추가한 원소 반환

 

  3) Stack 수정 관련

- push(n) : n이라는 원소를 back() 뒤에 추가

- pop() : front()에 해당하는 원소 제거

- swap(queue) : 함수를 호출한 Queue과 매개변수로 전달된 queue의 원소 바꿈

- emplace() : push와 동일하나 다른 컨테이너의 emplace와 마찬가지로 전달받은 인자를 통해 암시적 형변환이 가능함

 

  4) 연산자 오버로딩

- == : 비교하는 Queue내의 모든 원소가 같으면(순서도 고려) 참, 아니면 거짓

- != : 비교하는 Queue내의 원소 중 하나라도 다르면 참, 아니면 거짓

- >, <, >=, <= : Queue의 크기 비교

'프로그래밍 > 자료구조와 알고리즘' 카테고리의 다른 글

[자료구조] 6. STL Unordered_map  (0) 2023.07.27
[자료구조] 5. STL Map  (0) 2023.07.25
[자료구조] 3. STL Stack  (0) 2023.07.25
[자료구조] 2. STL List  (0) 2023.07.24
[자료구조] 1. STL Vector  (0) 2023.07.10