Taene's
[C++] std::stack 본문
<정의>
- 스택(Stack)은 대표적인 LIFO(Last In First Out) 구조이고, 제일 마지막에 넣은 데이터가 처음으로 빠져나온다.
- 스택의 기본함수에는 push, pop, empty, top, swap 등이 있다.
<선언>
#include <stack>
stack<int> stack1;
stack<string> stack2;
<함수>
- 스택에 데이터 추가
스택이름.push(데이터) 형태로 데이터를 추가한다.
stack.push(element)
- 스택에 데이터 삭제
스택이름.pop(데이터) 형태로 스택의 top 데이터를 삭제한다. (스택이 비어있는데 함수를 호출하면 런타임 에러 발생)
stack.pop()
- 스택의 제일 위의 데이터 반환
스택이름.top() 형태로 제일 최상위 데이터를 반환한다. (스택이 비어있는데 함수를 호출하면 런타임 에러 발생)
stack.top()
- 스택의 사이즈 반환
스택이름. size() 형태로 스택의 현재 사이즈를 반환한다.
stack.size()
- 스택이 비어있는 지 확인
스택이름.empty() 형태로 스택이 비어있는 지 확인한다.
stack.empty()
- 스택 SWAP : 두 스택의 내용 바꾸기
스택1과 스택2 두 스택의 내용을 바꾸고 싶은 경우, 내장된 swap 함수를 사용한다.
swap(스택1 이름, 스택2 이름) 형태로 두 스택의 내용을 바꾼다.
swap(stack1 , stack2)
'C++ 개념 공부 > STL' 카테고리의 다른 글
[C++] std::memset (0) | 2024.03.15 |
---|---|
[C++] std::map (0) | 2023.09.11 |
[C++] std::pair (1) | 2023.09.03 |
[C++] std::queue (0) | 2023.09.02 |
[C++] std::sort (0) | 2023.09.02 |