Max Consecutive Ones

Max Consecutive Ones

题目描述:

给定一个数组中只包含着0和1,要求找到最长的连续的1的长度。

例子:

具体描述见LeetCode485

解题思路:

我们直接遍历数组,用flag标签表示遍历的位置。如果碰上了1,则找到当前连续1的长度,然后与上一个连续的1长度进行比较即可。

代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class Solution {
public:
int findMaxConsecutiveOnes(vector<int>& nums) {
int length = 0;
int i = 0;
while(i < nums.size()){
if (nums[i] == 1){
int tmp = 0;
while(nums[i] == 1){
tmp++;
i++;
}
length = max(length, tmp);
}else{
i++;
}
}
return length;
}
};