본문 바로가기

DataStructure

[Java] 스택 (Stack) 자료구조

📌 스택 (Stack)

  • 스택은 어떠한 자료를 쌓아서 올려놓는 Last In First Out 구조이다. (LIFO)
  • 예시로 프링글스가 있다. 가장 먼저 들어가 있는 과자는 가장 나중에 나올 수 있다.
  • 즉, 나중에 들어간 과자가 가장 먼저 나오므로 후입선출이라고 생각하면 된다.
  •  

📌 Stack 사용법

Stack 선언

 

Stack<String> stack = new Stack<>();
Stack<Integer> stack = new Stack<>();
Stack 값 추가

 

Stack<String> stack = new Stack<>();
stack.push(1);
stack.push(2);
Stack 값 제거

 

Stack<String> stack = new Stack<>();
stack.pop; // 제일 위에 값 제거

stack.clear(); // stack 의 모든 값 제거
Stack 맨 위의 값 꺼내기

 

Stack<String> stack = new Stack<>();
stack.peek(); // 제일 위의 값 꺼내기
Stack 기타 메서드

 

  • stack.size() : 현재 스택에 들어있는 데이터의 개수를 반환한다.
  • stack.empty() : 스택이 비어있는지 여부를 판단한다.
  • stack.contains() : 특정 데이터가 포함되어 있는지 확인한다.