자료구조

자료구조 <Stack> 알고리즘 이해

um_coding 2023. 8. 22. 21:31

Stack(스택)

스택(stack)은 데이터의 삽입과 삭제가 한쪽 방향에서만 일어나는 구조이다.

다음과 같은 그림은 과자를 넣는 곳과 빼는 곳의 방향이 같아 가장 최근에 들어간 동전이 가장 먼저 나오는데, 스택의 좋은 예라고 할 수 있다.

 

이와 같은 스택은 가장 나중에 삽입된 데이터가 가장 먼저 삭제되므로 후입 선출(LIFO:List-In First-Out)구조라고도 한다.

스택은 배열을 이용하거나 연결 리스트를 이용해서 구현할 수 있다.

코드 한 줄씩 해석하기

우선 구조체 먼저 선언

결과값

topIndex = -1 이면 아무것도 없다.

topIndex = 0 이면 한개 채워졌다.

topIndex = 1 이면 두개 채워졌다.