Home Stack
Post
Cancel

Stack

Stack 이란?

  • 메모리 안 데이터들을 더욱 효율적으로 다루기 위해 만들어진 데이터 참조 방식
  • 마지막에 들어온 데이터가 가장 먼저 나가는 LIFO(Last In First Out, 후입선출) 구조를 갖는다.
  • java.util 패키지 소속

Stack 특징

  1. 한 쪽 끝에서만 자료를 삽입하거나 삭제할 수 있는 선형 구조
  2. 인터럽트 처라. 수식 계산. 서브루틴 복귀 저장에 사용
  3. 자료구조 그래프의 깊이 우선 탐색(DFS)에 사용
  4. 재귀적 함수를 호출할 때 사용
  5. 삽입, 삭제는 O(1), 탐색은 O(n)

구현 종류

  1. 배열 → input 사이즈를 알아야 함
  2. 리스트 → 사이즈를 몰라도 가능, 구현이 어려움
    • java의 Stack class는 리스트로 구현되어 있음

참고 사이트

This post is licensed under CC BY 4.0 by the author.