堆栈adt python平衡父级

堆栈adt python平衡父级,python,Python,编写一个名为balanced_方括号()的函数。此函数将传递一个字符串作为输入,您必须检查字符串中的任何括号或尖括号,即:'(','')是否正确平衡 我正在努力使其正确无误。有人能帮助我吗?这是我的代码: def balanced_brackets(text): s = Stack() balanced = True index = 0 while index < len(text) and balanced: symbol = text[i

编写一个名为balanced_方括号()的函数。此函数将传递一个字符串作为输入,您必须检查字符串中的任何括号或尖括号,即:'(','')是否正确平衡

我正在努力使其正确无误。有人能帮助我吗?这是我的代码:

def balanced_brackets(text):
    s = Stack()
    balanced = True
    index = 0
    while index < len(text) and balanced:
        symbol = text[index]
        if symbol in "(<":
            s.push(symbol)
        else:
            index += 1

        index = index + 1

    if balanced and s.is_empty():
        return True
    else:
        return False
def balanced_括号(文本):
s=堆栈()
平衡=正确
索引=0
当索引如果符号在“(中,则您的方法中有许多错误

正确的步骤应遵循以下原则:

  • 当遇到
    时:
  • 将其与顶层堆栈值进行比较,以查看它们是否匹配
  • 如果匹配,则从堆栈中弹出顶部值
  • 如果它们不匹配,则字符串不平衡

  • 如果遇到的每个
    都匹配堆栈上的顶部值,并且堆栈末尾为空,则字符串处于平衡状态。

    如果处于平衡状态,则s.为空():
    。如果
    s
    为空,则此条件将始终为真,除非您仅获得一系列类似的结束括号,否则它很可能已满。太好了!我完全理解其背后的想法,但请您指导我完成以下操作,好吗对于代码,我正在努力在哪里修改代码。