코딩테스트/프로그래머스

[프로그래머스 / Java] Lv2 - 올바른 괄호

COBI-98 2023. 1. 4. 15:49

🔒 올바른 괄호

✔ 문제 설명

🚩 요구사항 분석

  • 스택이 비어있지않고 들어오는 괄호가 ')'이고 현재 스택에있는 값이 반대인 '(' 라면 스택을 비워준다.
    •  올바른 괄호
  • 아니라면 스택에 추가.
  • 스택이 0 이라면 true 아니라면 false

🔑 문제풀이

import java.util.Stack;

class Solution {
    boolean solution(String s) {
        boolean answer = true;
        
        Stack<Character> stack = new Stack<>();
        for(int i =0;i<s.length();i++){
            char ch = s.charAt(i);
            if(!stack.isEmpty() && ch==')' && stack.peek() != ch){
                stack.pop();
            }else{
                stack.push(ch);
            }  
   
        }
        answer = stack.size() == 0 ? true : false;
        return answer;
    }
}

💡 추가한 테스트 케이스

추가한 케이스는 없다