有效的括号「变题」

20. 有效的括号

 

开头先来一个小插曲,关于「括号」相关的总结可见 秒杀所有括号类问题

变题一:不要求左括号必须以正确的顺序闭合

也就是去掉了 有效的括号 中的要求二!!

🌰 举个例子:[(])这种情况也是满足要求滴!

变题二:要求必须按 { [ ( 的顺序进行关闭

🌰 举个例子:{[()]}, {}[()]是符合要求的;[{()}]是不符合要求的

换句话说,{的优先级最高,它可以包含其它两种类型的括号;而其它两种类型的括号不能包含它。其它两种同理!

思路:分别为{ [ (设置权重2 1 0,入栈时判断栈顶优先级是否低于当前左括号优先级,如果低于,则非法