20. 有效的括号
给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。
有效字符串需满足:
左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
示例 1:
输入:s = "()"
输出:true
解析
直接使用栈去解决
class Solution {
public boolean isValid(String s) {
Stack<Character> stack = new Stack<>();
for(char val:s.toCharArray()){
if(val=='('||val=='{'||val=='['){
stack.push(val);
}else{
if(stack.isEmpty()) return false;
if(val==')' && stack.peek()=='('){
stack.pop();
}else if(val==']' && stack.peek()=='['){
stack.pop();
}else if(val=='}' && stack.peek()=='{'){
stack.pop();
}else{
return false;
}
}
}
return stack.isEmpty();
}
}
注意:本文归作者所有,未经作者允许,不得转载