: 한 쪽 끝에서만 자료를 넣고 뺄 수 있는 LIFO(Last in First out)
- pop() - stack에서 가장 위에 있는 항목을 제거
- push(item) - item 하나를 stack의 가장 윗 부분에 추가
- peek() - stack의 가장 위에 있는 항목을 반환
- isEmpty - stack이 비어있을 때 true를 반환
- 배열과 달리 스택은 상수 시간에 i번째 항목에 접근할 수 없다.
- 하지만 스택에서 데이터를 추가하거나 삭제하는 연산은 상수 시간에 가능하다.
- 배열처럼 원소들을 하나씩 옆으로 밀어 줄 필요가 없다.
Stack은 연결리스트로 구현할 수 있다.