在 JavaScript 中寻找括号的平衡
给定一个仅由两种字符组成的字符串:“(“和“)”。我们要求编写一个函数,该函数采用一个这样的字符串,并通过多次插入“(“或“)”来平衡括号。然后,函数应返回字符串中进行的最小插入次数以平衡该字符串。
例如:如果字符串为 −
const str = '()))';
则应输出 2,因为通过在前增添“((”,我们可以平衡该字符串。
示例
此代码如下 −
const str = '()))'; const balanceParanthesis = str => { let paren = []; for (let i = 0; i < str.length; i++) { if (str[i] === "(") { paren.push(str[i]); } else if (str[i] === ")") { if (paren[paren.length - 1] === "("){ paren.pop(); }else { paren.push("#"); }; }; } return paren.length; } console.log(balanceParanthesis(str));
输出
控制台中的输出将为 −
2
广告