用栈解决括号匹配问题
public boolean isValid(String s) {
if(s.length()<=1)
return false;
HashMap<Character,Character> map=new HashMap();
map.put('(',')');
map.put('[',']');
map.put('{','}');
Stack<Character> stack=new Stack();
for(int i=0;i<s.length();i++){
char c=s.charAt(i);
if(map.containsKey(c))
stack.push(c);
else{
if(!stack.empty()){
char left=stack.pop();
char right=map.get(left);
if(right!=c)
return false;
}
else
return false;
}
}
if(stack.empty())
return true;
else
return false;
}