用 Python 检查圆括号是否配对的程序
假设我们有一个由圆括号“(”和“)”组成的字符串 s。我们要检查括号是否配对。
所以,如果输入为 s = "(()())(())",则输出将为 True
要解决这个问题,我们将按照以下步骤操作:
- num_open := 0
- 对于 s 中的每个字符 c,执行以下操作:
- 如果 c 与 ')' 相同,则
- 如果 num_open < 0,则
- num_open := num_open - 1
- 否则,
- 返回 False
- 否则,
- num_open := num_open + 1
- 如果 num_open < 0,则
- 如果 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
广告