Stack(스택) 스택(stack)은 데이터의 삽입과 삭제가 한쪽 방향에서만 일어나는 구조이다. 다음과 같은 그림은 과자를 넣는 곳과 빼는 곳의 방향이 같아 가장 최근에 들어간 동전이 가장 먼저 나오는데, 스택의 좋은 예라고 할 수 있다. 이와 같은 스택은 가장 나중에 삽입된 데이터가 가장 먼저 삭제되므로 후입 선출(LIFO:List-In First-Out)구조라고도 한다. 스택은 배열을 이용하거나 연결 리스트를 이용해서 구현할 수 있다. 코드 한 줄씩 해석하기 우선 구조체 먼저 선언 결과값 topIndex = -1 이면 아무것도 없다. topIndex = 0 이면 한개 채워졌다. topIndex = 1 이면 두개 채워졌다.