在JavaScript中找到二进制数组中连续1的最大数目
我们需要编写一个JavaScript函数,该函数将二进制数组(仅包含0或1的数组)作为唯一参数。
函数应该找到仅由1组成的数组的连续子数组的长度,然后将其返回。
例如-
如果输入数组是-
const arr = [1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1];
那么输出应该是-
const output = 4;
我们将使用滑动窗口算法来捕获仅由1组成的最大窗口(大小最大)。
示例
为此的代码将是-
const arr = [1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1];
const findMaxConsecutiveOnes = (arr = []) => {
let left = 0;
let right = 0;
let max = 0;
while (right < arr.length) {
if (arr[right] === 0) {
if (right - left > max) {
max = right - left
};
right++;
left = right;
} else {
right++
};
};
return right - left > max ? right - left : max;
}
console.log(findMaxConsecutiveOnes(arr));输出结果控制台中的输出将是-
4
热门推荐
10 祝孙辈生日祝福语简短
11 恋人跨年祝福语大全简短
12 考大学敬酒简短祝福语
13 开工投产大吉祝福语 简短
14 偶然结婚祝福语朋友简短
15 感谢学长学姐祝福语简短
16 戏精的祝福语简短
17 我要结婚祝福语简短
18 婚前女儿生日祝福语简短