FILO(First In Last Out)의 구조를 가짐.
특정 위치에서만 원소를 넣거나 뺄 수 있는 제한이 걸려있음.
스택, 큐 덱을 묶어서 Restricted Structure라고 부름.
원소의 추가 O(1)원소의 제거 O(1)제일 상단의 원소 확인 O(1)제일 상단이 아닌 나머지 원소들의 확인/변경이 원칙적으로 불가능
배열을 통해 stack을 구현하면 제일 상단이 아닌 나머지 원소들도 확인/변경이 가능하도록 만들 수는 있음.const int MX = 1000005;
int dat[MX];
int pos = 0; // 스택의 길이, 스택 내의 원소의 갯수
void StackBasic::push(int x) {
dat[pos++] = x;
}
void StackBasic::pop() {
pos--;
}
int StackBasic::top() {
return dat[pos-1];
}
stack<int> SS.push(element) element를 Stack에 추가S.pop() Stack의 제일 상단 값을 제거S.empty() Stack이 비었는 지 확인S.top() Stack의 제일 상단 원소 확인