leetcode 20.有效括号 javascript

2018-06-23  本文已影响0人  帅气的名字都被用了了

问题很简单,把左括号全部押栈,遇到右括号全部出栈,通过map比较两个值,最后栈里时空的就可以了

/**
 * @param {string} s
 * @return {boolean}
 */
var isValid = function(s) {
    if(!s.length){ return true }
    const pair = {
        '{': '}',
        '(': ')',
        '[': ']'
    }
    let stack = [];
    
    for(let i = 0; i < s.length; i ++){
        if(pair[s[i]]){
            stack.push(s[i]);
        }else {
            let popped = stack.pop(s[i]);
            if (pair[popped] !== s[i]){
                return false;
            }
        }
    }
    return stack.length === 0;
};
上一篇下一篇

猜你喜欢

热点阅读