Given a binary array, find the maximum number of consecutive 1s in this array.
Example 1:
Input: [1,1,0,1,1,1]
Output: 3
Explanation: The first two digits or the last three digits are consecutive 1s.
The maximum number of consecutive 1s is 3.
Note:
- The input array will only contain
0and1. - The length of input array is a positive integer and will not exceed 10,000
这道题的做法是遍历一遍vector数组,设一个整数count来计数连续的1有多少个,遇到0的时候令count = 0,设一个整数Max保存count的最大值
代码如下:
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
count = 0;
if (Max < count)
Max = count;
}
return Max;
}
};
本文介绍了一种高效算法,用于找出二进制数组中最长的连续1序列。通过一次遍历,利用计数器跟踪当前连续1的数量,并更新最大值。
691

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



