题干
讲解
这个题目可以记住使用栈,知道了使用栈,就可以不停的判断括号是不是匹配,最后栈不为空,就是不闭合,为空就是闭合
题解
/*** 这里先用hash表存一下({[代码就不会显得这么蠢* 这样写比较容易懂,将就一下吧*/public boolean isValid(String s) {if(s.length()%2 != 0){return false;}Stack<String> stringStack = new Stack<String>();String[] strings = s.split("");if("}".equals(strings[0]) || "]".equals(strings[0]) || ")".equals(strings[0])){return false;}for(String l : strings){if(stringStack.isEmpty()){stringStack.push(l);}else{if(("}".equals(l) && "{".equals(stringStack.peek()))|| ("]".equals(l) && "[".equals(stringStack.peek()))|| (")".equals(l) && "(".equals(stringStack.peek()))){stringStack.pop();}else{stringStack.push(l);}}}return stringStack.isEmpty();}
