물건을 쌓아 올리듯 자료를 쌓아 올린 형태의 자료구조이다.
마지막에 삽입한 자료를 가장 먼저 꺼낸다.
- push: 저장소에 자료를 삽입한다.
- pop: 저장소에서 자료를 꺼낸다.
- isEmpty: 스택이 공백인지 아닌지를 확인하는 연산
- peek: 스택의 top에 있는 원소를 반환하는 연산
#define STACK_SIZE 100
int Stack[STACK_SIZE];
int top = -1;
void push(int val) {
if (top >= STACK_SIZE - 1)
return; // overflow
else
Stack[++top] = val;
}
void pop() {
if (top == -1)
return 0; // empty
else
return Stack[top--];
}
boolean isEmpty() {
return top < 0;
}
int peek() {
return Stack[top];
}