문제로

풀이

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
class Solution {
    fun isValid(s: String): Boolean {
        var charArr = CharArray(s.length)
        var top = 0;

        for (c in s) {
            when(c) {
                '(', '[', '{' -> charArr[top++] = c
                ')' -> if(top == 0 || charArr[--top] != '(') return false
                '}' -> if(top == 0 || charArr[--top] != '{') return false
                ']' -> if(top == 0 || charArr[--top] != '[') return false
                else -> return false
            }
        }

        return top == 0;
    }
}


*처음에 stack으로 풀었는데 charArray가 훨씬 빨랐다 ...*