使字符串平衡的最少删除次数。

img


这个算法题不明白我这个方法为啥不行,找出一个中间分割线,左边的应该都是a,找到左边所有b就是应该删除的b的数量,同理,右边删除找到的a,但是方法通过不了。

img

var minimumDeletions = function (s) {
  let arr = [];
  for (let index = 0; index < s.length; index++) {
    let num = 0;
    num += s.slice(0, index).match(/b/g)
      ? s.slice(0, index).match(/b/g).length
      : 0;
    num += s.slice(index + 1).match(/a/g)
      ? s.slice(index).match(/a/g).length
      : 0;
    arr.push(num);
  }
  return arr.sort()[0];
};

遗漏了全部为a或者全部b的情况

这代码你自己运行测试了吗