ValidParentheses

public static boolean isValid(String s) {

        Stack<Character> stack = new Stack<>();
        char[] arr = s.toCharArray();

        for(int i = 0; i < arr.length; i++){
            if(')' == arr[i] || '}' == arr[i] || ']' == arr[i]) {
                if(!stack.isEmpty()) {
                    char a = stack.pop();
                    int num = arr[i] - a;
                    if (num != 1 && num != 2) {
                        stack.push(arr[i]);
                    }
                } else {
                    stack.push(arr[i]);
                }
            }else {
                stack.push(arr[i]);
            }
        }

        return stack.isEmpty();
    }

๋‹ซ๋Š” ๊ด„ํ˜ธ์ผ ๋•Œ ๋กœ์ง ์ˆ˜ํ–‰

for ๋ฌธ์ด ๋‹ค ๋ˆ ํ›„ stack ์— ๋‚จ์•„์žˆ๋Š” ๊ฐ’์ด ์žˆ์œผ๋ฉด false, ๋ฐฐ์—ด์ด ๋น„์–ด ์žˆ์œผ๋ฉด true ๋ฅผ ๋ฐ˜ํ™˜

Last updated