题目来源于力扣
理论基础
堆栈&队列
判断括号字符串是否有效
题目描述
给定一个只包括 '(',')','{','}','[',']'的字符串,判断字符串是否有效。
有效字符串需满足:
左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。
示例:
>
输入: "()"
输出: true输入: "()[]{}"
输出: true输入: "(]"
输出: false输入: "([)]"
输出: false输入: "{[]}"
输出: true
解题思路
栈,两两匹配
Python 解法
def isValid(self, s): stack = [] paren_map = {')':'(', ']':'[', '}':'{'} for c in s: if c not in paren_map: stack.apend(c) elif not stack or paren[c] != stack.pop(): return False return not stack
© 著作权归作者所有
举报
发表评论
0/200