开始以为case不全,因为我设置了一个s==null s.length()1 但是我没注意到的是,snull和s是空串完全不一样,s.length=0才表示是空串,题目很简单,一个栈就解决了
class Solution {
public boolean isValid(String s) {
//栈
Stack<Character> st=new Stack();
char[] chs=s.toCharArray();
for(char c:chs){
if(c=='('||c=='{'||c=='['){
st.push(c);
}
if(c==')'||c=='}'||c==']'){
if(st.isEmpty()){
return false;
}
char temp=st.pop();
char t=c==')'?'(':(c=='}'?'{':'[');
if(temp!=t){
return false;
}
}
}
return st.isEmpty();
}
}