Stack
- java.util 패키지로 LIFO 구조인 Stack을 구현할 때 사용
- push() = Stack에 데이터 추가
- pop() = Stack 맨 뒤의 데이터 출력 및 제거
- peek() = Stack 맨 뒤의 데이터 출력 (제거 X)
- clear() = Stack 안에 있는 데이터 모두 제거
- size() = Stack 안의 데이터 개수 반환
- contains() = Stack에 지정한 데이터가 포함되어 있는지 여부(true/false) 반환
- empty() = Stack이 비어있는지(true/false) 여부 반환
Example
https://school.programmers.co.kr/learn/courses/30/lessons/12973
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
import java.util.Stack;
class Solution{
public int solution(String s){
Stack<Character> stack = new Stack<>();
char[] arr = s.toCharArray();
for(char c : arr){
if(!stack.isEmpty() && stack.peek().equals(c)){
stack.pop();
}else{
stack.push(c);
}
}
return stack.isEmpty() ? 1 : 0;
}
}
'Java > 알고리즘과 자료구조' 카테고리의 다른 글
com.jcraft.jsch (0) | 2023.12.13 |
---|---|
java.util.HashSet (0) | 2023.11.14 |
java.lang.StringBuilder, StringBuffer (0) | 2023.05.16 |
java.math.BigInteger (0) | 2023.04.24 |
java.util.Deque (0) | 2023.02.27 |
댓글