2种方法

括号序列

http://www.nowcoder.com/questionTerminal/37548e94a270412c8b9fb85643c8ccc2

1.压栈和取栈
'(','[','{' 这三个就压栈
')',']','}' 这三个就取栈,取栈时判断一下是不是对应的括号,如果是就取栈成功,不是就不能取。
这样最后看栈是不是为空,不为空就说明顺序不正确

2.字符替换

        boolean flag = true;
        while(flag){
            int len = s.length();
            s=s.replace("()","");
            s=s.replace("[]","");
            s=s.replace("{}","");
            if(len == s.length()){
                flag=false;
            }
        }
        return s.length() == 0;

'()','[]','{}'替换为'',最后字符串为空就true

全部评论
您的第二种方法真的可以??这个([])
2 回复
分享
发布于 2021-04-04 10:45
为什么用while(flag)循环,直接替换完看长度不就OK了吗?
点赞 回复
分享
发布于 2021-03-04 11:18
联易融
校招火热招聘中
官网直投
这代码写的太精美了,佩服佩服
点赞 回复
分享
发布于 2021-03-16 21:42
太妙了
点赞 回复
分享
发布于 2021-05-05 14:55
流弊
点赞 回复
分享
发布于 2021-05-16 17:20
太牛批了
点赞 回复
分享
发布于 2021-05-25 22:31
第二种方法的if判断语句我觉得应该加一个||s.length()==0,这样如果刚开始就是完全排列好的,就可以少执行一次while循环。个人拙见,如有错误请各位旁友指出。
点赞 回复
分享
发布于 2021-05-31 10:03
厉害
点赞 回复
分享
发布于 2021-06-02 17:29
第二个方法牛客的编译器和idea的判断方式根本不一样,牛客的可以支持替换"{[]}"成"[]",但idea不行。
点赞 回复
分享
发布于 2021-06-22 15:06
流弊
点赞 回复
分享
发布于 2021-09-11 21:30
厉害了
点赞 回复
分享
发布于 2022-06-26 00:29

相关推荐

点赞 评论 收藏
转发
111 7 评论
分享
牛客网
牛客企业服务