Given a string containing just the characters ‘(‘, ‘)‘, ‘{‘, ‘}‘, ‘[‘ and ‘]‘,
determine if the input string is valid.
The brackets must close in the correct order, "()" and "()[]{}" are
all valid but "(]" and "([)]" are
not.
public class Solution {
public boolean isValid(String s) {
LinkedList<Character> left=new LinkedList<Character>();
for(int i=0;i<s.length();i++){
if(s.charAt(i)=='(' || s.charAt(i)=='{' || s.charAt(i)=='['){
left.add(s.charAt(i));
}
else{
if(!left.isEmpty()){
char c=left.peekLast();
if( (c=='(' && s.charAt(i)==')') || (c=='{' && s.charAt(i)=='}') || (c=='[' && s.charAt(i)==']')) left.pollLast();
else left.add(s.charAt(i));
}
else left.add(s.charAt(i));
}
}
if(left.isEmpty()) return true;
else return false;
}
}Valid Parentheses,布布扣,bubuko.com
原文地址:http://blog.csdn.net/dutsoft/article/details/37728935