JAVA
[ JAVA ] Stack 총 정리
데구르르르
2021. 2. 2. 21:16
자료구조의 큐와 비교되는 형태로 LIFO ( Last In First Out ) 후입선출 의 구조를 가지고 있습니다.
- 그래프의 DFS( 깊이우선탐색 )에 사용
- 재귀적 함수 호출 시 사용
Stack 자료구조를 사용하기 전 import java.util.* 필수!
import java.util.*;
Stack 선언
import java.util.*;
Stack<Integer> stack = new Stack<>(); //int형 스택 선언
Stack 값 삽입
Stack<Integer> stack = new Stack<>(); // int형 스택 선언
stack.push(2); // stack에 2 추가
stack.push(4); // stack에 4 추가
stack.push(5); // stack에 5 추가
// 2, 4, 5
Stack 값 삭제
Stack<Integer> stack = new Stack<>();
stack.push(1); // stack에 1 추가
stack.push(2); // stack에 2 추가
stack.pop(); // stack에 맨 위의 값 제거
stack.clear(); // stack의 전체 값 제거 (초기화)
Stack의 맨 위 값 출력
Stack<Integer> stack = new Stack<>();
stack.push(1); // stack에 1 추가
stack.push(2); // stack에 2 추가
stack.peek(); // stack의 가장 상단의 값 출력 -> 2
기타
Stack<Integer> stack = new Stack<>();
stack.push(1); // stack에 1 추가
stack.push(2); // stack에 2 추가
stack.contains(5); // stack에 5가 있는지 확인 -> false
stack.size(); // stack의 크기 출력 : 2
stack.empty(); // stack이 비어있는지 확인 (비어있다면 true)