利用栈解决括号匹配问题_利用栈解决括号匹配问题的函数

利用栈解决括号匹配问题_利用栈解决括号匹配问题的函数栈的应用括号匹配(python篇)算法步骤:1.创建一个空栈2.遍历字符串中的每个字符3.如果当前字符是左括号,将其压入栈中4.如果当前字符是右括号,检查栈是否为空,如果为空,则说明右括号没有匹配的左括号,返回false;如果

栈的应用–括号匹配(python篇)
  算法步骤:

  1.创建一个空栈

  2.遍历字符串中的每个字符

  3.如果当前字符是左括号,将其压入栈中

  4.如果当前字符是右括号,检查栈是否为空,如果为空,则说明右括号没有匹配的左括号,返回false;如果栈不为空,弹出栈顶元素,检查它是否与当前右括号匹配,如果不匹配,则返回false

  5.遍历完字符串后,检查栈是否为空,如果为空,则说明所有括号都匹配,返回true;否则,说明有左括号没有匹配的右括号,返回false

  代码实现:

  “`python

  def is_valid_parentheses(s: str) -> bool:

  stack = []

  for c in s:

  if c == '(' or c == '[' or c == '{':

  stack.append(c)

  elif c == ')':

  if not stack or stack.pop() != '(':

  return False

  elif c == ']':

  if not stack or stack.pop() != '[':

  return False

  elif c == '}':

  if not stack or stack.pop() != '{':

  return False

  return not stack

  “`

  示例:

  “`python

  assert is_valid_parentheses('()') == True

  assert is_valid_parentheses('()[]{}') == True

  assert is_valid_parentheses('(]') == False

  assert is_valid_parentheses('([)]') == False

  assert is_valid_parentheses('{[]}') == True

  “`

2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/92464.html

(0)
上一篇 2024年 5月 30日
下一篇 2024年 5月 30日

相关推荐

关注微信