BrynnCar / LeetCode

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LeetCode

记录LeetCode刷题过程

leetcode20: 有效的括号

判断括号的有效性可以使用这一数据结构

遍历给定的字符串s,当遇到左括号时,在后面应当有一个对用的右括号使其闭合,并且最后一个左括号应该当先被对应的右括号匹配,最后的先被匹配这一数据结构的特性吻合

解题思路: 遍历给定的字符串schar curChar = s.charAt(i)

  • 当遇到左括号时,将对应的右类型括号压栈stack.push(curChar)
  • 当遇到右类型括号时
    • 如果栈为空,说明没有对应的左类型括号,输出结果括号不匹配
    • 如果栈不为空,进行出栈操作stackChar = stack.pop()
      • 如果出栈字符stackChar与curChar不一致,输出结果括号不匹配
      • 如果出栈字符stackChar与curChar一致,再次判断下一个字符,直到结束
  • 最后判断栈是否为空
    • 栈为空,说明括号全部匹配,输出结果括号匹配
    • 栈不为空,说明有不匹配的括号,输出结果括号不匹配

About


Languages

Language:Java 100.0%