实现功能函数 getBracketsNumber输入任意字符串,计算出字符串中有多少对小括号
例如:
console.log(getBracketsNumber('((()((hhk))')) // 3
console.log(getBracketsNumber('()(')) // 1
方法一:
function getBracketsNumber(s) {
var stack = new Array(s.length);
var count = 0;
for (var i = 0; i < s.length; i++) {
var c = s.charAt(i);
switch (c) {
case "(":
stack.push(c);
break;
case ")":
if (stack.pop() === "(") {
count++;
}
break;
default:
break;
}
}
return count;
};
方法二:
function getBracketsNumber(str){
let array = str.split('')
let num = 0
let brackets = [
{
front:'(',
end:')'
}
]
array.forEach((c, index)=>{
let bracketsIndex = brackets.findIndex(item=> item.end === c)
if(bracketsIndex > -1){
let index2 = array.findIndex(c=>{
return c === brackets[bracketsIndex].front
})
if(index2 >-1 && index2 < index){
array[index2] = '*'
num ++
}
}
})
return num
}