티스토리 뷰

풀이과정

  • 자료구조 Stack을 이용하여 풀이를 진행한다.
  • 주어진 String을 순회하며 각 char에 대해 다음을 수행한다.
    • stack이 비어있으면 stack에 해당 char를 push한다.
    • stack의 가장 위에 있는 char와 현재 순회중인 char가 서로 다르면 stack에 push한다.
    • 그렇지 않으면 stack에서 pop한다.
  • 최종적으로 stack이 비어있는지 여부를 확인하여 결과를 반환한다. 비어있다면 문자열을 주어진 조건에 맞게 모두 제거할 수 있음을 의미한다.

Code

import java.util.Stack;

class Solution {
       public int solution(String s) {
        Stack<Character> stack = new Stack<>();
        char[] chars = s.toCharArray();

        for (char ch : chars) {
            if (stack.isEmpty() || stack.peek() != ch) {
                stack.push(ch);
            } else {
                stack.pop();
            }
        }

        return stack.isEmpty() ? 1 : 0;
    }
}

결과

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함