LeetCode - 有效的括号

给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。

有效字符串需满足:

左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
注意空字符串可被认为是有效字符串。

利用栈后进先出的特性解决

m = {"{":"}","(":")","[":"]","-":"-"}

for s in strs:
    print(s)
    
    stack = ["-"]
    
    for i in s:

        if stack[-1] not in m:
            break
        
        if m[stack[-1]] == i:
            
            stack.pop()
        else:
            stack.append(i)
        
    if(len(stack)==1):
        print("true")
    else:
        print("false")
    
    print("=====")
posted @ 2019-09-02 10:40  james_cai  阅读(158)  评论(0)    收藏  举报