1. 스택(Stack)

 스택은 나중에 들어온 데이터가 먼저 나가게되는 후입선출(LIFO)의 선형 자료구조이다.   스택에 삽입된 데이터들은

스택의 끝 부분인 스택 탑(stack top)에 쌓이듯이 저장되며 데이터 하나를 추출할 때도 현재 스택 탑에 있는 데이터가

가장 먼저 추출된다. 주요 연산은 다음과 같다.

 

  • 데이터 삽입
    • push(e) : 데이터 e를 스택 탑에 삽입
  • 데이터 삭제
    • pop() : 스택 탑의 데이터를 스택에서 제거하고 제거한 데이터를 반환

 

2. 스택의 활용

  • 후위표기법의 계산 및 괄호의 매칭에 활용된다. 

  • 자료구조의 성질상 이전 작업 흐름으로 복귀하는 기능의 구현에 편리하다.  예를들어 현재 진행중인 작업을 잠시
    중단하고 다른 작업을 해야할 경우, 스택에 진행중이던 작업 정보를 넣어두고 다른 작업을 진행한 뒤 스택에 넣어둔
    정보를 pop 하여 다시 작업을 진행할 수 있다.

  • 위의 특징을 활용하여 그래프의 깊이우선 탐색에 스택의 원리가 사용되며 프로그램에서 함수를 호출할 때 함수의
    정보를 저장하는 데에도 사용된다. 

 

'CS > 자료구조' 카테고리의 다른 글

#5 그래프(Graph)  (0) 2021.10.01
#4 큐(Queue)  (0) 2021.09.28
#2 양방향 연결 리스트(Doubly Linked List) 구현  (0) 2021.09.27
#1 리스트(List)  (0) 2021.09.27
#0 ADT(Abstract Data Type)  (0) 2021.09.27

+ Recent posts