输入: "()[]{}"
输出: true
/**
*
* @param s string字符串
* @return bool布尔型
*/
function isEmpty(stack){
if(stack.length == 0){
return true
}else{
return false
}
}
function isValid( s ) {
//整体思想:利用栈比较压入元素和栈顶元素是否匹配
var stack = [];
var obj = {
'(':')',
'[':']',
'{':'}'
}
if(s.length % 2 == 1) return false
for(var i = 0 ; i < s.length; i++){
if( s[i] == '(' || s[i] == '[' || s[i] == '{'){
stack.push(s[i])
}else{
var key = stack.pop();
if(obj[key] !== s[i]){
return false
}
}
}
return isEmpty(stack);
}
module.exports = {
isValid : isValid
};