给定一个二进制数组 nums
, 计算其中最大连续 1
的个数。
示例 1:
输入:nums = [1,1,0,1,1,1] 输出:3 解释:开头的两位和最后的三位都是连续 1 ,所以最大连续 1 的个数是 3.
示例 2:
输入:nums = [1,0,1,1,0,1] 输出:2
提示:
1 <= nums.length <= 105
nums[i]
不是0
就是1
.
Related Topics
- 数组
分析:
我们只需要去判断从数组里取出来的数是否是1,如果是的话,我们定义一个count计数加1,当识别到0时,我们就需要把前面的count保存下来,每次保留最大值,这时候还需要把count清零重新计数,最后结果输出再result。
# begin
class Solution:
def findMaxConsecutiveOnes(self, nums: List[int]) -> int:
count = 0
result = 0
for i in range(len(nums)):
if nums[i] == 1:
count += 1
else:
result = max(result, count)
count = 0
return max(count, result)
# end
代码中运用了一个max()函数,就是比较二者大小,类似于一个if判断函数。