큐 (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하면 나타나는 결과
🌀 큐 문제
[프로그래머스] Level2 : 프린터
문제 programmers.co.kr/learn/courses/30/lessons/42587 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이
lin-ing-link.tistory.com
[프로그래머스] Level2 : 기능개발
문제 programmers.co.kr/learn/courses/30/lessons/42586 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각
lin-ing-link.tistory.com
[프로그래머스] Level2 : 다리를 지나는 트럭
문제 programmers.co.kr/learn/courses/30/lessons/42583 코딩테스트 연습 - 다리를 지나는 트럭 트럭 여러 대가 강을 가로지르는 일 차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면
lin-ing-link.tistory.com
'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 |