Python编程题4--判断字符串里面的括号是否闭合

2020-08-16  本文已影响0人  wintests

题目

给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。有效字符串需满足以下要求:
1,左括号必须用相同类型的右括号闭合。
2,左括号必须以正确的顺序闭合。
3,注意空字符串可被认为是有效字符串。

例如,"{[{()}]()}"就是一个闭合的有效字符串。

实现思路

这里我们运用 里面 先进后出 的思想来处理问题。

代码实现

def demo(s):
    stack = []
    for i in s:
        if i == "(" or i == "[" or i == "{":
            stack.append(i)
        elif i == ")":
            if len(stack) == 0 or stack.pop() != "(":
                return False
        elif i == "]":
            if len(stack) == 0 or stack.pop() != "[":
                return False
        elif i == "}":
            if len(stack) == 0 or stack.pop() != "{":
                return False
    return True if len(stack) == 0 else False


res1 = demo("{[{()}]()}")
print(res1 == True)

res2 = demo("{}())))[]")
print(res2 == False)

res3 = demo("")
print(res3 == True)

更多Python编程题,等你来挑战:Python编程题汇总(持续更新中……)

上一篇下一篇

猜你喜欢

热点阅读