leetcode - 485. Max Consecutive Ones

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

你可能感兴趣的:(OJ题目记录,leetcode,算法,数据结构)