스택(Stack)은 한쪽 끝이 막힌 터널과 같은 데이터 구조로, 가장 나중에 들어간 것이 가장 먼저 나오는 LIFO(Last In Frist Out) 구조로 되어있습니다. 들어가는 순서는 A - B - C 지만, 나오는 순서는 C- B - A 입니다.
이렇게 가장 나중에 들어간 것이 가장 먼저 나오는 구조를 LIFO 라고 합니다. 스택에서 top은 삽입과 삭제가 일어나는 위치로, 현재 스택의 가장 위에 있는 데이터 위치가 됩니다.
새로 삽입되는 데이터는 top 위치에 있는 데이터 위에 쌓이게 되는데, 그러면 삽입된 데이터가 스택에서 가장 위에 있는 데이터가 되므로 top은 새로 삽입된 데이터의 위치로 갱신됩니다. 함수를 이용해 삽입과 삭제 연산을 하는 프로그램을 구현해보면 아래와 같습니다.
#include
#
c언어
#
LIFO
#
Postfix
#
스택
#
자료구조
#
후위표기법
#
후입선출
원문 링크 : 스택 (Stack)