You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

27 lines
961 B

8 months ago
'''
给定一个只包括 '('')''{''}''['']' 的字符串判断字符串是否有效
有效字符串需满足
左括号必须用相同类型的右括号闭合
左括号必须以正确的顺序闭合
注意空字符串可被认为是有效字符串
示例 1输入: "()" 输出: true
示例 2输入: "()[]{}" 输出: true
示例 3输入: "(]" 输出: false
示例 4输入: "([)]" 输出: false
示例 5输入: "{[]}" 输出: true
'''
class Solution(object):
def isValid(self,s):
"""
:type s:str
:rtype: bool
"""
stack = []
d = ["()", "[]", "{}"]
for i in xrange(0,len(s)):
stack.append(s[i]) # 在列表末尾添加新的对象
if len(stack) >=2 and stack[-2]+stack[-1] in d:
stack.pop() # 移除列表中最后一个元素,并且返回该元素的值
stack.pop()
return len(stack) == 0