给定一个二进制数组 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的数量,放入容器里,然后找出容器里最大的数返回