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
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP