21.有效的括号(题号:20)

import java.util.Deque;
import java.util.LinkedList;

public class VaildParentheses {
    //使用栈
    public boolean isVaild(String s){
        Deque<Character> stack = new LinkedList<>();
        //遍历字符串中所有字符,依次判断
        for (int i = 0; i < s.length(); i++) {
            //获取当前字符
            char c = s.charAt(i);

            //判断当前字符是左括号还是右括号
            //如果是左括号,直接将对应的右括号入栈
            if(c=='('){
                stack.push(')');
            }else if(c=='['){
                stack.push(']');
            }else if(c=='{'){
                stack.push('}');
            }else {
                //如果是右括号,弹栈,判断是否匹配
                if(stack.isEmpty()||stack.pop()!=c){
                    return false;
                }
            }
        }
        return stack.isEmpty();
    }

    public static void main(String[] args) {
        VaildParentheses vaildParentheses = new VaildParentheses();
        String s = "()[]{}";
        System.out.println(vaildParentheses.isVaild(s));
    }
}
全部评论

相关推荐

2025-12-28 10:21
已编辑
大连理工大学 产品经理
点赞 评论 收藏
分享
01-19 12:48
门头沟学院 C++
只想搞钱的鸽子很喜欢...:混账是很多的,还有那些在自己风华正茂的年纪说风凉话讥讽那些下岗前员工的。这些人都是现在职场环境这么烂的帮凶
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务