99클럽 코테 스터디 27일차 TIL [LeetCode] Removing Stars From a String (Java)

민경·2024년 6월 24일

문제

[LeetCode] Removing Stars From a String

풀이

  • 주어진 문자열 s의 각 문자를 탐색한다.
  • i번 째 문자 c*이 아닌 경우, 스택에 추가한다.
  • c*인 경우, 마지막으로 추가된 문자를 꺼낸다.
  • 스택에 남은 문자들을 answer에 추가해 결과를 반환한다.

정답 코드

class Solution {
    public String removeStars(String s) {
        Stack<Character> st = new Stack<>();
        for(int i = 0; i < s.length(); i++) {
            char c = s.charAt(i);
            if(c == '*') {
                st.pop();
            } else {
                st.add(s.charAt(i));
            }
        }

        String answer = "";
        while(st.size() > 0) {
            answer = st.pop() + answer;
        }

        return answer;
    }
}
profile
강해져야지

0개의 댓글