描述: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.分析:这道题是要最找到二进制串中连续最多的1的个数。
- 思路一:使用循环查找。
class Solution {
public:
int findMaxConsecutiveOnes(vector<int>& nums) {
int flag = 0;
int res = 0;
for (int i = 0; i < nums.size(); i++) {
if (nums[i]) flag++;
else flag = 0;
if (flag > res) res = flag;
}
return res;
}
};
- 思路二:python版
class Solution(object):
def findMaxConsecutiveOnes(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
temp = 0
res = 0
for i in nums:
if i == 1:
temp = temp + 1
res = max(res, temp)
else:
temp = 0
return res