题目:
给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效
public static boolean isValid(String s){
Stack<Character> stack = new Stack<>();
for(int i = 0; i <s.length() ; i++) {
if(s.charAt(i)=='('||s.charAt(i)=='['||s.charAt(i)=='{') {
stack.push(s.charAt(i));
}else {
if(stack.isEmpty()) {
return false;
}
if(s.charAt(i)==')'&&stack.pop()!='(') {
return false;
}
if(s.charAt(i)==']'&&stack.pop()!='[') {
return false;
}
if(s.charAt(i)=='}'&&stack.pop()!='{') {
return false;
}
}
}
return stack.isEmpty();
}