20. Valid Parentheses(js)

20. Valid Parentheses

Given a string containing just the characters '('')''{''}''[' and ']', determine if the input string is valid.

An input string is valid if:

  1. Open brackets must be closed by the same type of brackets.
  2. Open brackets must be closed in the correct order.

Note that an empty string is also considered valid.

Example 1:

Input: "()"
Output: true

Example 2:

Input: "()[]{}"
Output: true

Example 3:

Input: "(]"
Output: false

Example 4:

Input: "([)]"
Output: false

Example 5:

Input: "{[]}"
Output: true
题意:判断多个括号组是否有效
代码如下:
/**
 * @param {string} s
 * @return {boolean}
 */
var isValid = function(s) {
    var arr=[];
    var len=s.length;
    for(var i=0;i<len;i++){
        if(s.charAt(i)=="{"){
            arr.push('}')
        }else if(s.charAt(i)=='['){
            arr.push(']');
        }else if(s.charAt(i)=='('){
            arr.push(')');
        }else{
            if(arr.length==0 || arr.pop() !=s.charAt(i)){
                return false;
            }
        }
    }

    return arr.length===0?true:false;
};

 

上一篇:32. Longest Valid Parentheses


下一篇:[ LeetCode ] #32. Longest Valid Parentheses (最长符合符合匹配的子字符串)