[자료구조] 스택 (Stack)

soso·2023년 9월 20일

스택(Stack)이란?

데이터를 저장하고 검색하는 데 사용되는 추상 자료형(ADT, Abstract Data Type) 중 하나입니다.
스택은 일종의 선형 자료구조로, 데이터를 저장하는 컨테이너가 있고, 이 컨테이너의 한 쪽 끝에서만 데이터의 삽입과 삭제가 이루어집니다.

📌후입선출(LIFO, Last In, First Out) 원칙
스택의 가장 큰 특징은 후입선출(LIFO, Last In, First Out)원칙에 따라 저장되고 관리 된다는 것입니다.

스택의 주요 연산

Push()

  • 스택에 데이터를 추가하는 연산.
  • 데이터는 스택의 맨 위에 추가된다.

Pop()

  • 스택에서 맨 위의 데이터를 제거하는 연산.
  • 가장 최근에 추가된 데이터가 먼저 제거 된다.

Top 또는 Peek()

  • 스택의 맨 위에 있는 데이터를 반환하지만 제거하지는 않는 연산.
  • 스택의 상단에 어떤 값이 있는지 확인할 때 사용 된다.

IsEmpty()

  • 스택이 비어있는지 여부를 확인하는 연산.

스택의 활용

  • 웹 브라우저의 뒤로가기
  • 실행취소(undo)
  • 괄호 짝 맞추기
  • 후위 표기법 계산
  • 문자열 역순 출력
profile
오늘의 기록

0개의 댓글