스택(Stack)이란?

데이터를 저장하고 검색하는 데 사용되는 추상 자료형(ADT, Abstract Data Type) 중 하나입니다.
스택은 일종의 선형 자료구조로, 데이터를 저장하는 컨테이너가 있고, 이 컨테이너의 한 쪽 끝에서만 데이터의 삽입과 삭제가 이루어집니다.
📌후입선출(LIFO, Last In, First Out) 원칙
스택의 가장 큰 특징은 후입선출(LIFO, Last In, First Out)원칙에 따라 저장되고 관리 된다는 것입니다.
스택의 주요 연산
Push()
- 스택에 데이터를 추가하는 연산.
- 데이터는 스택의 맨 위에 추가된다.
Pop()
- 스택에서 맨 위의 데이터를 제거하는 연산.
- 가장 최근에 추가된 데이터가 먼저 제거 된다.
Top 또는 Peek()
- 스택의 맨 위에 있는 데이터를 반환하지만 제거하지는 않는 연산.
- 스택의 상단에 어떤 값이 있는지 확인할 때 사용 된다.
IsEmpty()
스택의 활용
- 웹 브라우저의 뒤로가기
- 실행취소(undo)
- 괄호 짝 맞추기
- 후위 표기법 계산
- 문자열 역순 출력