在 JavaScript 中将整数放在正确的索引处
问题
我们需要编写一个JavaScript函数,它接受一个字符串str,它只包含'['或']'。
我们的函数应该添加最少数量的方括号('['或']',并且在任何位置),以便生成的括号组合字符串有效。最后,我们应该返回添加的最少数量的括号。
例如,如果函数的输入是
输入
const str = '[]]';
输出
const output = 1;
输出说明
因为,如果我们在开头添加'[',字符串将被平衡。
示例
const findAdditions = (str = '') => {
let left = 0
let right = 0
for (let i = 0; i < str.length; i++) {
if (str[i] === '[') {
left += 1
} else if (str[i] === ']') {
if (left > 0) {
left -= 1
} else {
right += 1
}
}
}
return left + right;
};
console.log(findAdditions(str));输出结果1