큐 (Stack)
: 가장 처음으로 삽입된 원소가 가장 먼저 제거되는 FIFO(First In, First Out) 형태의 자료구조로, 한 쪽에선느 삽입만 이루어지고 다른 한 쪽에서는 삭제만 이루어지는 선형 구조.
queue 컨테이너
#include <queue>
template <class T, class Container = dequeue<T>> class queue;
🌀 설명
C++ STL에 포함되어 있는 큐를 표현하는 컨테이너.
🌀 인자
T : 데이터의 자료형
Container : 데이터를 담는 컨테이너의 유형
🌀 선언 및 초기화 예시
//정수를 담을 수 있는 큐를 선언
std::queue<int> myQueue;
//myQueue1과 동일한 큐를 생성
std::queue<int> myQueue2(myQueue1);
🌀 멤버함수
//큐가 비어있는지 여부를 반환
bool empty() const;
//큐의 크기를 반환
size_type size() const;
//큐의 가장 앞에 있는 원소를 반환
const_reference &front() const;
//큐의 가장 뒤에 있는 원소를 반환
const_reference &back() const;
//큐의 가장 뒤에 val을 삽입
void push(const value_type &val);
//큐의 가장 앞의 원소를 제거
void pop();
//큐의 가장 뒤에 새 원소를 추가
//객체 생성을 위한 인자를 받아 컨테이너 내부에서 객체를 생성
template <clas.. Args> void emplace(Args && ... args);
//큐의 모든 원소를 큐 x와 교환
void swap(stack& x) noexcept;
🌀 큐 에러
- Queue overflow : 큐가 꽉 차있을때 push하면 나타나는 결과
- Queue underflow : 큐가 비어 있을때 pop하면 나타나는 결과
🌀 큐 문제
반응형
'CS > 자료구조' 카테고리의 다른 글
[자료구조]이진 힙 (Binary Heap) (0) | 2021.01.12 |
---|---|
[자료구조] 트리 (Tree) (0) | 2021.01.03 |
[자료구조] stack 컨테이너_C++ (0) | 2020.12.17 |
[자료구조] list 컨테이너_C++ (0) | 2020.12.16 |
[자료구조] 연결 리스트 (Linked List) (2) | 2020.12.14 |