본문 바로가기

Algorithm

유효한 괄호 문자열 확인

반응형
fun isValidParentheses(s: String): Boolean {
    val stack = ArrayDeque<Char>()
    for (char in s) {
        when (char) {
            '(', '[', '{' -> stack.addLast(char)
            ')' -> if (stack.isEmpty() || stack.removeLast() != '(') return false
            ']' -> if (stack.isEmpty() || stack.removeLast() != '[') return false
            '}' -> if (stack.isEmpty() || stack.removeLast() != '{') return false
        }
    }
    return stack.isEmpty()
}

fun main() {
    println(isValidParentheses("({[]})")) // true
}
반응형

'Algorithm' 카테고리의 다른 글

문자열의 모든 순열  (0) 2023.10.29
가장 긴 공통 접두사  (0) 2023.10.29
최빈 단어 찾기  (0) 2023.10.29
공백으로 단어 뒤집기  (0) 2023.10.29
문자열의 모든 순열찾기  (0) 2023.10.29