20. 有效的括号
func isValid(s string) bool {
stack := make([]rune, 0, len(s))
m := map[rune]rune{
'}': '{',
']': '[',
')': '(',
}
for _, v := range s {
if v == '{' || v == '(' || v == '[' {
stack = append(stack, v)
continue
}
if len(stack) == 0 {
return false
}
if stack[len(stack)-1] == m[v] {
stack = stack[:len(stack)-1]
} else {
return false
}
}
return len(stack) == 0
}