创建一个函数来判断给定的表达式中的小括号是否闭合;
var expression = “(())()()”
var expressionFalse = “()(()”;
isBalanced(expression); // true
isBalanced(expressionFalse); // false
isBalanced(""); // true
输入描述:
输入为需要判断的变量,如(())()() 或 ()(() 或 “”
输出描述:
输出为布尔值,true或false
示例1
输入 ()
输出 true
示例2
输入 (
输出 false
示例3
输入 “”
输出 true
var str = readline();
var res = isBalanced(str);
print(res);
function isBalanced(str){
var arr = [];
if(str.length === 0 || str.length === 1) return false;
if(str === '""') return true;
for(var i = 0; i < str.length; i++){
//对于( 进行入栈
if(str[i] === '('){
arr.push(str[i]);
}
//对于)进行弹栈
if(str[i] === ')'){
if(arr.length){
arr.pop();
}else{
return false;
}
}
}
if(arr.length === 0){
return true;
}
return false;
}