当前位置: 首页 > news >正文

专题二最大连续1的个数|||

1.题目

题目分析:

给一个数字k,可以把数组里的0改成1,但是只能改k次,然后该变得到的数组能找到最长的子串且都是1。

2.算法原理

这里不用真的把0变成1,因为改了比较麻烦,下次用就要改回成1,这里用滑动窗口来,先进窗口,遇到1就无视,遇到0就进窗口,虽然1和0都在一个窗口中在画图里,但是要把1看出空气,理会0的个数,然后更k比较,满了就开始出窗口了,要排除0直到窗口内的0个数小于k。for循环来移动right,遇到1是无视,就走for循环来,遇到0就特殊处理,每次循环都更新长度值。

3.代码实现

class Solution {
public:int longestOnes(vector<int>& nums, int k) {int n=nums.size();int len=0;for(int left=0,right=0,zero=0;right<n;right++){//等于1不用管,for循环会自动right++if(nums[right]==0) zero++;while(zero>k){if(nums[left++]==0) zero--;}len=max(len,right-left+1);}return len;}
};

http://www.lryc.cn/news/546476.html

相关文章:

  • 【ORACLE】ORACLE19C在19.13版本前的一个严重BUG-24761824
  • 2025国家护网HVV高频面试题总结来了03(题目+回答)
  • CentOS vs Ubuntu - 常用命令深度对比及最佳实践指南20250302
  • SQL命令详解之常用函数
  • IndexError: index 0 is out of bounds for axis 1 with size 0
  • C++学习之C++初识、C++对C语言增强、对C语言扩展
  • k8s面试题总结(八)
  • 《今日-AI-编程-人工智能日报》
  • Koupleless 2024 年度报告 2025 规划展望
  • C与C++中inline关键字的深入解析与使用指南
  • 记录linux安装mysql后链接不上的解决方法
  • Java 大视界 -- Java 大数据在智能金融反欺诈中的技术实现与案例分析(114)
  • 01_NLP基础之文本处理的基本方法
  • (十 六)趣学设计模式 之 责任链模式!
  • 动态规划/贪心算法
  • PH热榜 | 2025-03-04
  • Mybatis-Plus 插件机制与自定义插件实现
  • 开源表单、投票、测评平台部署教程
  • 行为模式---命令模式
  • zabbix配置邮件告警
  • INI和CSV文件保存
  • 汽车智能钥匙中PKE低频天线的作用
  • 计算机等级考试
  • Geotools中获取Shapefile的属性表格字符集编码的一种方法
  • HTTP 与 HTTPS 协议:从基础到安全强化
  • Scrapy爬虫框架介绍
  • Stable Diffusion模型高清算法模型类详解
  • 软考网络安全口诀
  • Baklib内容中台赋能企业智管
  • vscode+vue前端开发环境配置