습관처럼

C++ - Stack, Queue 본문

Language/C++

C++ - Stack, Queue

dev.wookii 2020. 6. 23. 17:14

C++에서 stack 사용법을 간단하게 알아보자!

스택 기본 함수

 

추가 및 삭제

1. push(element) : top에 원소를 추가

2. pop() : top에 있는 원소를 삭제

 

조회

1. top() : top(스택의 처음이 아닌 가장 끝)에 있는 원소를 반환

 

기타

1. empty() : 스택이 비어있으면 true 아니면 false를 반환

2. size() : 스택 사이즈를 반환

#include <iostream>
#include <stack>

using namespace std;

int main(){
	// 스택 생성
	stack<int> s;

	// push
	s.push(3);
	s.push(2);
	s.push(1);

	// top
	cout << "top element : " << s.top() << '\n';

	// pop
	s.pop(); // 1이 삭제
	s.pop(); // 2가 삭제

	// size
	cout << "stack size : " << s.size() << '\n';

	// empty
	cout << "Is it empty? : " << (s.empty() ? "Yes" : "No") << '\n';

	return 0;
}

큐 기본 함수

 

추가 및 삭제

1. push(element) : 큐에 원소를 추가(뒤에)

2. pop() : 큐에 있는 원소를 삭제(앞에)

 

조회

1. front() : 큐 제일 앞에 있는 원소를 반환

2. back() : 큐 제일 뒤에 있는 원소를 반환

 

기타

1. empty() : 큐가 비어있으면 true 아니면 false를 반환

2. size() : 큐 사이즈를 반환

#include <iostream>
#include <queue>

using namespace std;

int main(){
	// 큐 생성
	queue<int> q;

	// push
	q.push(1);
	q.push(2);
	q.push(3);
	q.push(4);
	q.push(5);
	q.push(6);

	// pop
	q.pop();
	q.pop();
	q.pop();

	// front
	cout << "front element : " << q.front() << '\n';

	// back
	cout << "back element : " << q.back() << '\n';

	// size
	cout << "queue size : " << q.size() << '\n';

	// empty
	cout << "Is it empty? : " << (q.empty() ? "Yes" : "No") << '\n';

	return 0;
}

출처: twpower.github.io/76-how-to-use-queue-in-cpp

'Language > C++' 카테고리의 다른 글

C++ - map, unordered_map  (0) 2020.06.27
C++ - 문자 및 문자열 찾기  (0) 2020.06.27
C++ - Quick Sort (feat Algorithm qsort())  (0) 2020.06.23
C++ - 중복제거  (0) 2020.06.23
C++ - 조합 및 순열  (0) 2020.06.23