【优选算法】11----最大连续1的个数|||

---------------------------------------begin---------------------------------------

题目解析:

讲解算法原理:

这道题目可以使用滑动窗口算法来解决。滑动窗口的核心思想是通过维护一个窗口,使得窗口内的

0的个数不超过k,然后不断移动窗口的左右边界来找到最长的连续1子数组。

通过滑动窗口算法,我们可以高效地解决这个问题。滑动窗口算法的关键在于维护一个满足条件的

窗口,并通过移动窗口的边界来找到最优解。在这道题目中,我们通过维护一个窗口使得窗口内的

0的个数不超过k,从而找到了最长的连续1子数组。

编写代码:

cpp 复制代码
class Solution {
public:
    int longestOnes(vector<int>& nums, int k) {
        int ret=0;
        int n=nums.size();
        for(int right=0,left=0,zero=0;right<n;right++)
        {
            if(nums[right]==0)
            {
                zero++;
            }
            while(zero>k)
            {
                if(nums[left++]==0)
                {
                    zero--;
                }
            }
            ret=max(ret,right-left+1);
        }
        return ret;
    }
};

有兴趣的铁子可以参照我的思路来做一遍哦~

题目直达--->

1004. 最大连续1的个数 III - 力扣(LeetCode)

-------------------------------------------end-------------------------------------

相关推荐
guygg881 天前
基于全变差的压缩感知视频图像重构算法
算法·重构·音视频
尋有緣1 天前
力扣1327-列出指定时间段内所有的下单产品
leetcode·oracle·数据库开发
VT LI1 天前
SDF在实时图形渲染中的核心原理与架构创新
算法·sdf·有号距离场
想七想八不如114081 天前
408操作系统 PV专题
开发语言·算法
天一生水water1 天前
储层认知→技术落地→产量优化
人工智能·算法·机器学习
明洞日记1 天前
【VTK手册019】 深入理解 vtkProperty:从几何表达到 PBR 物理渲染
c++·图像处理·算法·vtk·图形渲染
汉克老师1 天前
2025年海淀区中小学信息学竞赛复赛(小学组试题第六题 蜂窝网络 (net))
c++·贪心算法·北京海淀中小学信息学竞赛·lower_bound
xiaoye-duck1 天前
C++入门基础指南:命名空间namespace
c++
Genevieve_xiao1 天前
【数据结构与算法】【xjtuse】面向考纲学习(下)
java·数据结构·学习·算法