diff --git a/problems/0020.有效的括号.md b/problems/0020.有效的括号.md index f2d78ade..ba50ad21 100644 --- a/problems/0020.有效的括号.md +++ b/problems/0020.有效的括号.md @@ -157,7 +157,26 @@ class Solution: ``` Go: +```Go +func isValid(s string) bool { + hash := map[byte]byte{')':'(', ']':'[', '}':'{'} + stack := make([]byte, 0) + if s == "" { + return true + } + for i := 0; i < len(s); i++ { + if s[i] == '(' || s[i] == '[' || s[i] == '{' { + stack = append(stack, s[i]) + } else if len(stack) > 0 && stack[len(stack)-1] == hash[s[i]] { + stack = stack[:len(stack)-1] + } else { + return false + } + } + return len(stack) == 0 +} +```