<aside>
💡 스택은 가장 나중에(최근에) 들어온 자료가 가장 먼저 처리되는 LIFO(Last-In-First-Out) 자료구조이다. 0개 이상의 요소를 가지는 선형리스트의 일종으로 데이터의 삽입과 제거가 한쪽 **끝(top)**에서만 이루어진다. 즉, 스택의 중간에서는 데이터를 삭제할 수 없다.
</aside>

연산
- push() : 스택(저장소)에 원소를 추가
- pop() : top에 있는 원소 삭제
- top() : 스택의 상단(마지막) 원소 return
- isEmpty() : 스택이 공백 여부 확인 (스택이 비어있으면 true, 아니면 false)
- size() : 스택 사이즈 반환
사용사례
- 재귀 알고리즘
- 웹 브라우저 방문기록 (뒤로가기)
- undo (되돌리기, 실행취소) 기능
- 역순 문자열 만들기
- 수식의 괄호 검사
- 후위 표기법 계산
- 안드로이드의 액티비티