Algorithm & Data Structures/Programers
Lv 2. 짝지어 제거하기
Geisha
2024. 4. 17. 10:43
처음 풀었던 방식은 while 과 for 문 등의 2중 반복문으로 하였으나 시간초과가 떠서 stack 을 이용한 풀이를 생각해보고 풀어보았다.
Stack 이라는 자료구조가 얼른 익숙해져서바로 나와야 할텐데 걱정이 크다.
import java.util.*;
class p짝지어제거하기
{
public int solution(String s)
{
char[] arr = s.toCharArray();
Stack<Character> st = new Stack<>();
for(int i = 0 ; i < s.length() ; i++){
char c = arr[i];
if(st.isEmpty()) st.push(c);
else{
if(st.peek()==c) st.pop();
else st.push(c);
}
}
return st.isEmpty()?1:0;
}
}
Stack
- pop()
- push()
- peek()
String
- toCharArray()