C, C++
<stack>
Yongs12
2023. 7. 5. 18:57
STL에 있는 스택 자료구조 기반의 컨테이너이다.
스택은 LIFO구조로 가장 늦게 들어온 데이터가 먼저 나가는 구조로 되어있다.
#include <iostream>
#include <stack>
int main()
{
std::stack<int> stack;
// 데이터를 삽입
stack.push(10);
// 맨 위에 있는 데이터를 제거
stack.pop();
// 맨 위에 있는 데이터를 꺼내온다.
const int data = stack.top();
// 스택의 사이즈 값을 반환한다.
const size_t size = stack.size();
// 스택이 비어있는지 확인
const bool isEmpty = stack.empty();
return 0;
}
std::stack의 함수들 시간 복잡도
함수 | 시간 복잡도 | 설명 |
push() | O(1) | 스택의 맨 위에 요소 추가 |
pop() | O(1) | 스택의 맨 위 요소 제거 |
top() | O(1) | 스택의 맨 위 요소 반환 |
empty() | O(1) | 스택이 비어 있는지 확인 |
size() | O(1) | 스택의 요소 갯수 반환 |