原题
给定一个二进制数组, 计算其中最大连续1的个数。
示例 1:
输入: [1,1,0,1,1,1] 输出: 3
解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3.
注意:
- 输入的数组只包含
0
和1
。 - 输入数组的长度是正整数,且不超过 10,000。
解法
思想
使用一个数遍历数组,另一个数记录遇到的连续的1的个数,记录最大值。
代码
class Solution {
public int findMaxConsecutiveOnes(int[] nums) {
int j=0;
int max=0;
for(int i:nums){
if(i==1){
j++;
}else{
if(j>max) max=j;
j=0;
}
}
if(j>max) max=j;
return max;
}
}
原创文章,作者:彭晨涛,如若转载,请注明出处:https://www.codetool.top/article/leetcode485-%e6%9c%80%e5%a4%a7%e8%bf%9e%e7%bb%ad1%e7%9a%84%e4%b8%aa%e6%95%b0/