[STL] C++ queue 생성 및 삽입, 삭제





결과

결과





코드

#include <string>
#include <iostream>
#include <queue>
using namespace std;

int main() {
	queue<int> q;

	if (q.empty()) cout << "큐가 비었습니다.\n";

	q.push(4);
	q.push(2);
	q.push(1);
	q.push(3);

	cout << "맨 앞 : " << q.front() << "\n";
	cout << "맨 뒤 : " << q.back() << "\n";


	cout << "나가는 순서 : ";
	while (!q.empty()) {
		cout << q.front() << " ";
		q.pop();
	}
	cout << "\n";

	return 0;
}



Queue : 후입후출(or 선입선출)의 구조로 가장 먼저 들어온 것이 가장 먼저 나간다.




empty() : 큐가 비어있는지 검사

- 비어있지 않다면 false를 return 한다.




push() : 데이터를 삽입(push) 




front() : 가장 앞 값을 리턴

- 가장 앞(가장 먼저 나갈) 값을 리턴




back() : 가장 뒤 값을 리턴

- 가장 뒤(가장 나중에 나갈) 값을 리턴




size() : 큐의 길이를 리턴




pop() : front() 값을 삭제(pop)

- 큐는 선입선출의 구조이므로 가장 앞에(가장 먼저 들어온) 값을 삭제한다.


- return 형이 void형이므로 pop()을 해주기 전에 front() 값을 따로 저장해두어야만 이용할 수 있다.


- 큐가 비었을 경우 pop()을 한다면 에러가 발생한다.








pair을 사용하여서 queue 2개 값 저장하기



링크

[C++/STL] - C++ pair 사용하여 쌍으로 값저장




+ Recent posts