题目描述
给定一个二进制数组 nums , 计算其中最大连续 1 的个数。
示例 1:
输入:nums = [1,1,0,1,1,1]
输出:3
解释:开头的两位和最后的三位都是连续 1 ,所以最大连续 1 的个数是 3.
示例 2:
输入:nums = [1,0,1,1,0,1]
输出:2
算法分析
与打擂台算法类似,找到更长的1更新已有的
完整代码
class Solution {
public:
int findMaxConsecutiveOnes(vector<int>& nums) {
//与打擂台算法类似
int max=0;
int count=0;
for(int i=0;i<nums.size();i++)
{
if(nums[i]==1)
count++;
else
{
max=max>count?max:count;
count=0;
}
}
return max>count?max:count;
}
};