力扣--1004.最大连续1的个数

给定一个二进制数组 nums 和一个整数 k,如果可以翻转最多 k0 ,则返回 数组中连续 1 的最大个数

示例 1:

复制代码
输入:nums = [1,1,1,0,0,0,1,1,1,1,0], K = 2
输出:6
解释:[1,1,1,0,0,1,1,1,1,1,1]
粗体数字从 0 翻转到 1,最长的子数组长度为 6。

示例 2:

复制代码
输入:nums = [0,0,1,1,0,0,1,1,1,0,1,1,0,0,0,1,1,1,1], K = 3
输出:10
解释:[0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1]
粗体数字从 0 翻转到 1,最长的子数组长度为 10。

提示:

  • 1 <= nums.length <= 105
  • nums[i] 不是 0 就是 1
  • 0 <= k <= nums.length
java 复制代码
class Solution {
    public int longestOnes(int[] nums, int k) {
        int max=0;
        int start=0,end=0;
        int zero=0;
        for(end =0;end<nums.length;end++){
            if(nums[end]==0){
                zero++;
            }
            while(zero>k){
                if(nums[start]==0){
                    zero--;
                }
                start++;
            }
            max=Math.max(max,end-start+1);
        }
        return max;
    }
}
相关推荐
小欣加油3 小时前
leetcode56 合并区间
c++·算法·leetcode·职场和发展
lqqjuly3 小时前
前沿算法深度解析(二)
人工智能·算法·机器学习
wang09073 小时前
自己动手写一个spring之IOC_2
java·后端·spring
来杯@Java4 小时前
学生选课管理系统(基于springboot+vue前后端分离的项目)计算机毕业设计java
java·spring boot·spring·vue·毕业设计·maven·mybatis
徐小夕4 小时前
万字长文!千万级文档 RAG 知识库系统落地实践
前端·算法·github
不知名的老吴5 小时前
线程的生命周期之线程“插队“
java·开发语言·python
akunkuntaimei5 小时前
2026年高考数学各省真题及答案(完整版)
算法·高考
ANnianStriver5 小时前
PetLumina-02-后端开发与前后端联调
java·ai·sa-token
Hello:CodeWorld5 小时前
C 风格变参 vs C++ 变参模板:核心区别与选型指南
c语言·c++·算法