一个字符串中包含 {} [] () ,判断这个字符串中的括号是否是合法闭合的
思路:从左到右循环这个字符串,如果是左括号把左括号放到一个列表中,然后如果是右括号,看这个右括号能否和列表中最后一个左括号组成一对括号,如果可以就把列表中最后的左括号pop掉,继续匹配
def func(str):
dic = {'(': ')', '[': ']', '{': '}'}
l_li = []
for i in str:
if i in dic:
l_li.append(i)
else:
if not l_li or i != dic[l_li[-1]]:
return False
l_li.pop()
return not l_li