标签:
/* * 20. Valid Parentheses * 2016-4-16 by Mingyang * 这里有几点注意一下,stack!=null没有任何意义,必须用stack.isEmpty * 检查字符是用==,检查String是用.isEqual(),因为String是引用类型,值相等但是地址可能不等。 * 这道题目不用Hashmap也是一样的做 */ public boolean isValid(String s) { int len=s.length(); if(len==0||s==null) return true; Stack<Character> stack=new Stack<Character>(); for(int i=0;i<len;i++){ char temp=s.charAt(i); if(temp==‘(‘||temp==‘[‘||temp==‘{‘){ stack.push(temp); }else{ if(stack.isEmpty()){ return false; } char nuu=stack.peek(); if((temp==‘)‘&&nuu==‘(‘)||(temp==‘}‘&&nuu==‘{‘)||(temp==‘]‘&&nuu==‘[‘)){ stack.pop(); continue; }else{ return false; } } } return stack.isEmpty(); }
标签:
原文地址:http://www.cnblogs.com/zmyvszk/p/5399916.html