题解 | #括号序列#

括号序列

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

描述
给出一个仅包含字符'(',')','{','}','['和']',的字符串,判断给出的字符串是否是合法的括号序列
括号必须以正确的顺序关闭,"()"和"()[]{}"都是合法的括号序列,但"(]"和"([)]"不合法。

function isValid( s ) {
    // write code here
    var arr = [];
    for(var i=0;i<s.length;i++){
        switch(s[i]){
            case '(':
            case '[':
            case '{': arr.push(s[i]);break;
            case ')':
                 if(arr[arr.length-1]=='('){
                     arr.pop();
                     break;
                 }else{
                     return false;
                 }
             case ']':
                 if(arr[arr.length-1]=='['){
                     arr.pop();
                     break;
                 }else{
                     return false;
                 }
                case '}':
                 if(arr[arr.length-1]=='{'){
                     arr.pop();
                     break;
                 }else{
                     return false;
                 }
        }
    }
    return arr.length==0?true:false;
}
全部评论

相关推荐

11-01 20:03
已编辑
门头沟学院 算法工程师
Amazarashi66:这种也是幸存者偏差了,拿不到这个价的才是大多数
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务