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;
}
}