Description
Given a binary array nums, return the maximum number of consecutive 1’s in the array.
Example 1:
Input: nums = [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.
Example 2:
Input: nums = [1,0,1,1,0,1]
Output: 2
Constraints:
1 <= nums.length <= 10^5
nums[i] is either 0 or 1.
Solution
If current number is 1
, then add to count. Otherwise re-count again.
Time complexity:
o
(
n
)
o(n)
o(n)
Space complexity:
o
(
1
)
o(1)
o(1)
Code
class Solution:
def findMaxConsecutiveOnes(self, nums: List[int]) -> int:
cnt = 0
res = 0
for each_num in nums:
if each_num == 1:
cnt += 1
else:
cnt = 0
res = max(res, cnt)
return res