给定一个二进制数组 nums , 计算其中最大连续 1 的个数。

class Solution {
public:
int findMaxConsecutiveOnes(vector<int>& nums) {
if(nums.size()==0) return 0;
vector<int> res;
int max=0;
for( int i = 0 ; i < nums.size(); i++)
{
if(nums[i]==1)
{
max++;
if ((i+1 < nums.size()&&nums[i + 1] != 1)||i+1==nums.size())
{
res.push_back(max);
max=0;
}
}
}
if(res.size()==0) return 0;
int maxres=res[0];
for( int i = 0 ; i < res.size();i++)
{
if(res[i]>maxres)
maxres=res[i];
}
return maxres;
}
};
思路:
记录连续1的数量,放入容器里,然后找出容器里最大的数返回
该代码实现了一个名为Solution的类,包含一个方法findMaxConsecutiveOnes,用于计算给定二进制数组中最大连续1的个数。方法通过遍历数组,记录连续1的个数,并将最大值存储到结果向量res中,最后返回res的最大值。
619

被折叠的 条评论
为什么被折叠?



