CS/자료구조

[자료구조] queue 컨테이너_C++

lingk 2020. 12. 17. 22:13

큐 (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하면 나타나는 결과


🌀  문제

 

lin-ing-link.tistory.com/134

 

[프로그래머스] Level2 : 프린터

문제 programmers.co.kr/learn/courses/30/lessons/42587 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이

lin-ing-link.tistory.com

lin-ing-link.tistory.com/136

 

[프로그래머스] Level2 : 기능개발

문제 programmers.co.kr/learn/courses/30/lessons/42586 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각

lin-ing-link.tistory.com

lin-ing-link.tistory.com/138

 

[프로그래머스] Level2 : 다리를 지나는 트럭

문제 programmers.co.kr/learn/courses/30/lessons/42583 코딩테스트 연습 - 다리를 지나는 트럭 트럭 여러 대가 강을 가로지르는 일 차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면

lin-ing-link.tistory.com

 

반응형