class Solution {
public int longestOnes(int[] nums, int k) {
int left = 0, right = 0, result = 0;
while(right < nums.length){
if(nums[right] == 0){
if(k == 0){
// 若nums[left]一直是1,那么还要往右一个
while(nums[left] == 1) ++left;
++left;
}else{
--k;
}
}
result = Math.max(result, ++right - left);
}
return result;
}
}
1004.最大连续1的个数Ⅲ
最新推荐文章于 2025-12-06 18:30:00 发布
本文介绍了一种使用滑动窗口技术解决特定问题的方法:给定一个二进制数组和一个整数k,找到数组中最多可以翻转k个0以变为1的情况下,最长连续1的子数组长度。
408

被折叠的 条评论
为什么被折叠?



