唯一区别就是输入的bracket不局限于那三种 "{" "[" "("
所以给了两个辅助方法,一个是iSOPen(char)用来判断是不是前括号,另一个是 findClosed(char)用来找出前括号所对应的后括号
public class Solution {
public boolean isValid(String s) {
Stack<Character> stack=new Stack<>();
for(Character c:s.toCharArray()){
if(c=='('){
stack.push(')');
}else if(c=='['){
stack.push(']');
}else if(c=='{'){
stack.push('}');
}else if(stack.isEmpty()||stack.pop()!=c){
return false;
}
}
return stack.isEmpty();
}
}
网友评论