给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。
有效字符串需满足:
左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
/**
* @param {string} s
* @return {boolean}
*/
var isValid = function(s) {
if (s.length % 2 === 1) return false;
const leftArr = ['(', '{', '['];
const obj = {
')': '(',
'}': '{',
']': '['
}
const sck = [];
for (let i = 0 ; i < s.length; i += 1) {
if (leftArr.includes(s[i])) {
sck.push(s[i]);
} else {
if (!obj[s[i]]) return false;
if (obj[s[i]] !== sck[sck.length -1]) return false;
sck.pop();
}
}
return sck.length === 0;
};