链接
题目描述
栈
如果是左括号,就把对应的右括号放到栈里。
如果是右括号,就首先判断栈是否为空,若不空,看栈顶元素是否是对应的右括号。
class Solution {
public boolean isValid(String s) {
if(s == null){
return true;
}
Stack<Character> stack = new Stack<>();
for(char c : s.toCharArray()){
if(c == '('){
stack.push(')');
}else if(c == '['){
stack.push(']');
}else if(c == '{'){
stack.push('}');
}else if(stack.isEmpty() || c != stack.pop()){
return false;
}
}
return stack.isEmpty();
}
}