자료 구조

[자료 구조] 1. Queue(큐) - C++

HongCorin 2022. 9. 5. 21:51
반응형

1. Queue 란?

 

먼저 집어 넣은 데이터가 먼저 나오는
FIFO(First In First Out)구조로 저장하는 형식이다

 

queue 자료 구조에

a > b > c

순서로 element 를 push 하면,

 

 

element 를 pop 할 때도

a > b > c

순서로 나오게 된다.

 

 

 

 

2. C++  queue

 

#_include_queue

#include <queue>
using namespace std;

queue<int> qi;
queue<char> qc;

위와 같이 <queue> 헤더를 이용해서 사용할 수 있고,

data type 과 같이 선언하여 정의한다.

 

 

 

#_push()_pop()_front()_back()

//예제 코드
#include <queue>
#include <iostream>
using namespace std;


int main() {
	queue<int> qi;
	queue<char> qc;

	qi.push(1);                   //queue 에 element 넣기
	qi.push(2);
	qi.push(3);

	while (qi.size()) 
	{
		std::cout << qi.front() << std::endl; //queue 에 가장 먼저 들어간 element
		std::cout << qi.back() << std::endl;  //queue 에 가장 나중에 들어간 element
		qi.pop();                             //queue 에 가장 먼저 들어간 element 꺼내기
	}

	qc.push('a');
	qc.push('b');
	qc.push('c');

	while (qc.size())
	{
		std::cout << qc.front() << std::endl; //queue 에 가장 먼저 들어간 element
		std::cout << qc.back() << std::endl;  //queue 에 가장 나중에 들어간 element
		qc.pop();                             //queue 에 가장 먼저 들어간 element 꺼내기
	}

	return 0;
}

 

* push() : queue 에 element 넣기

* pop() : queue 에서 element 빼기

* front() : queue 에 가장 먼저 들어간 element 표기

* back() : queue 에 가장 나중에 들어간 element 표기

 

 

 

시간 순서에 따라
관리돼야 하는 경우에
사용하기 적절한 자료구조이다.