leetcode1004. 最大连续1的个数 III

https://leetcode-cn.com/problems/max-consecutive-ones-iii/
滑动的窗口,两层while循环嵌套,分别代表左右两个指针的变化。
变化的过程中,进行相应的操作。

class Solution {
    public int longestOnes(int[] nums, int k) {
        int left = 0;
        int right = 0;
        int max = 0;
        int count = 0;
        while(right < nums.length){
            int tmp = nums[right];
            if(tmp == 0){
                count++;
            }
            while(count > k){
                int temp = nums[left];
                if(temp == 0){
                    count--;
                }
                left++;
            }
            max = Math.max(max, right - left + 1);
            right++;
        }
        return max;
    }
}
上一篇:301,组合总和 III


下一篇:HTML基础III