스택 (Stack)

Minsu Kang·2020년 11월 15일
0

스택(Stack) 이란?

물건을 쌓아 올리듯 자료를 쌓아 올린 형태의 자료구조이다.
마지막에 삽입한 자료를 가장 먼저 꺼낸다.

스택(Stack) 연산

  • 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];
}
profile
백엔드 개발자

0개의 댓글