678. Valid Parenthesis String
给你一个只包含 "(",")","*" 的字串s,"*" 可以是左括号、右括号或空字串,求出s是
否可以组成一个合法的括号表达式。
思路:
1.用两个stack储存左括号和*,如果遇到(或*就push,如果遇到)分以下情况:
* 如果left有可以用的(就把他pop出来匹配
* 否则如果extra有可以用的*就把他pop出来当成(
* 如果left和extra都没有表示)无法匹配,提早返回False
2.判断left还有没有没处理完的括号,一直不断的从extra里面pop,如果他的索引在
当前left的右边的话就可以匹配,从left删除一个括号。
3.最后判断left是否可以被匹配完即可
py code: