给定一个二进制数组, 计算其中最大连续 1
的个数。
输入:[1,1,0,1,1,1]
输出:3
解释:开头的两位和最后的三位都是连续 1 ,所以最大连续 1 的个数是 3.
let findMaxConsecutiveOnes = nums => {
let max = 0, cur = 0;
nums.forEach(num => {
cur = num === 0 ? 0 : cur + 1;
max = Math.max(max, cur);
});
return max;
};
console.log(findMaxConsecutiveOnes([1, 1, 0, 1, 1, 1]));
func findMaxConsecutiveOnes(nums []int) int {
Max := func(a, b int) int {
if a > b {
return a
} else {
return b
}
}
max, cur := 0, 0
for _, num := range nums {
if num == 0 {
cur = 0
} else {
cur = cur + 1
}
max = Max(cur, max)
}
return max
}
class Solution {
public int findMaxConsecutiveOnes(int[] nums) {
int max = 0, cur = 0;
for (int x : nums) {
cur = x == 0 ? 0 : cur + 1;
max = Math.max(max, cur);
}
return max;
}
}