스택 (stack) 이란?

스택(stack)은 자료를 표현하고 처리하는 과정으로 메모리 안에 데이터를 효율적으로 관리하게 도와주는 자료 방식입니다.

두 가지 표현 방식 있습니다.

FILO(First in last out)으로 처음에 들어왔던 자료는 맨 마지막에 처리가 됩니다. 다른 말은 LIFO(Last in first out)으로 제일 마지막에 들어온 자료가 제일 먼저 처리가 됩니다.

그림 설명 참고

스택(stack)

스택의 쌓인 자료는 수직적인 성분으로 표현으로 맨 위에 자료가 TOP 입니다.

맨 밑에 있는 부분은 bottom이며, push는 새로운 자료 추가, 삽입이며, POP은 연산 수행할 때 TOP에 자료 순서부터 자료 제거를 합니다.

들어온 순서는 1 – > 2 -> 3-> 4 / 데이터 제거 순서는 4 -> 3 -> 2 -> 1로 진행됩니다.

스택을 사용한 예로는 실행취소(Ctrl + z), 웹부라우저 뒤로가기 등 있습니다.

대표적인 스택 구현 방법으로는 2가지가 있습니다.

  1. 1차원 배열 : 구현이 쉽지만, input 사이즈를 미리 알아야 합니다.
  2. 리스트는 구현이 조금 더 어렵지만 제한된 사이즈로부터 자유롭습니다.

백엔드, 프론트엔드 차이점 공부 자료

Leave a Comment