leetcode-485-easy

Max Consecutive Ones

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 <= 105
nums[i] is either 0 or 1.

思路一:双指针,遍历数组,遇到 0 时更新最大连续值

    public int findMaxConsecutiveOnes(int[] nums) {
        int max = 0;

        int left = 0;
        int right = 0;

        for (int i = 0; i < nums.length; i++) {

            if (nums[i] == 0) {
                max = Math.max(max, right - left);
                left = i;
                right = i;
            } else {
                right++;
            }
        }
        max = Math.max(max, right - left);

        return max;
    }
posted @ 2023-01-08 19:43  iyiluo  阅读(33)  评论(0)    收藏  举报