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
0
and1
. - The length of input array is a positive integer and will not exceed 10,000
class Solution { public int findMaxConsecutiveOnes(int[] nums) { if (nums == null || nums.length == 0) { return 0; } int res = 0, cur = 0; for (int i = 0; i < nums.length; i++) { if (nums[i] == 1) { if (i == 0 || nums[i - 1] == 1) { cur += 1; } else { cur = 1; } // case [0, 1] res cover both cases res = Math.max(res, cur); } } return res; } }