问题
分析
对于括号的问题,首先想到的就是使用栈
代码
public static boolean isValid(String s) { char[] chas = s.toCharArray(); Stack<Character> stack = new Stack<>(); for (int i = 0; i < chas.length; i++) { //如果是左括号 if (chas[i] == '(' || chas[i] == '{' || chas[i] == '[') { stack.push(chas[i]); } else { if (stack.isEmpty()) return false; else { Character c = stack.peek(); if(chas[i]==')'&&c=='(') { stack.pop(); } if(chas[i]=='}'&&c=='{') { stack.pop(); } if(chas[i]==']'&&c=='[') { stack.pop(); } } } } return stack.isEmpty(); }
学习情况
1次