题目:
给定一个二进制数组, 计算其中最大连续 1 的个数。
示例:
输入:[1,1,0,1,1,1] 输出:3 解释:开头的两位和最后的三位都是连续 1 ,所以最大连续 1 的个数是 3.
思路:
数组的一次遍历,遇到1就加并储存起来count,之后进行比较,设置count归为0,最后一次的count和ans比较为最大值。
代码:
class Solution {
public int findMaxConsecutiveOnes(int[] nums) {
int count = 0, ans = 0;
for (int num : nums) {
if (num == 1) {
count++;
} else {
ans = Math.max(ans, count);
count = 0;
}
}
return Math.max(ans, count);
}
}