题目:有效的括号
做这道题的时候,一开始美掌握好方法,没有使用数据结构,后面才发现需要用到栈。
所以这道题的解决方法为,使用数据结构--栈,下面的就非常简单了。
题解:
class Solution {
public boolean isValid(String s) {
if(s.length()%2==1) {
return false;
}
char[] a=s.toCharArray();
Stack<Character> ch=new Stack<Character>();
for(int i=0;i<a.length;i++) {
if(a[i]=='(') {
ch.push(')');
}else if(a[i]=='['){
ch.push(']');
}else if(a[i]=='{') {
ch.push('}');
}else {
if(ch.isEmpty()==true) {
return false;
}else if(ch.peek()==a[i]){
ch.pop();
}else{
return false;
}
}
}
return ch.isEmpty();
}
}