Valid Parentheses - LeetCode
题目:
Given a string containing just the characters '('
, ')'
, '{'
, '}'
, '['
and ']'
, determine if the input string is valid.
The brackets must close in the correct order, "()"
and "()[]{}"
are all valid but "(]"
and "([)]"
are not.
这道题目就是一道考验栈的使用。对于python来说,这个直接使用list结构是很简单的。
代码:
在代码中,我使用了一个
strval的常量list,通过判断位置关系来选择。如果没有想到这个方法的可以借鉴一下。
class Solution:
# @return a boolean
def isValid(self, s):
if not s:
return True
temp = [s[0]]
strval = ['(',')','[',']','{','}']
for i in s[1:]:
if len(temp) == 0:
temp.append(i)
elif strval.index(i) - strval.index(temp[-1]) == 1:
temp.pop()
else:
temp.append(i)
if len(temp) == 0:
return True
else:
return False