用于检查括号在Python中是否平衡的程序

假设我们有一个由括号“(”和“)”组成的字符串。我们必须检查括号是否平衡。

因此,如果输入就像s =“((()())(()))”,那么输出将为True

为了解决这个问题,我们将遵循以下步骤-

  • num_open:= 0

  • 对于s中的每个字符c,

    • 如果num_open <0,则

    • 除此以外,

    • 除此以外,

    • num_open:= num_open-1

    • 返回False

    • num_open:= num_open +1

    • 如果c与')'相同,则

    • 返回num_open的反函数

    让我们看下面的实现以更好地理解-

    示例

    class Solution:
       def solve(self, s):
          num_open = 0
          for c in s:
             if c == ')':
                if num_open < 0:
                   num_open -= 1
                else:
                   return False
                else:
                   num_open += 1
          return not num_open
    ob = Solution()print(ob.solve("(()())(())"))

    输入值

    "(()())(())"

    输出结果

    False
    猜你喜欢