最大连续1的个数(滑动窗口)

在这里插入图片描述

算法原理:

这道题大眼一看是关于翻转多少个0的问题,但是,如果你按照这种思维去做题,肯定不容易。所以我们要换一种思维去做,这种思维不是一下就能想到的,所以想不到也情有可原。
题目是:给定一个二进制数组 nums 和一个整数 k,如果可以翻转最多 k 个 0 ,则返回 数组中连续 1 的最大个数 。
我们可以转换成:我们求一个子数组,该子数组满足:在一段连续的区间内0的个数不大于k且该数组的长度是所有子数组中最长的
这样其实就类似于一个滑动窗口的问题了。
如果还没有看明白,没关系。详细解释一下:对比以前的滑动窗口,以前的判断条件是求某一段的和最大/求某一段含有不重复的字符最多……,只不过这次的判断条件是0的个数不能超过k,由于这个条件对我们子区间内还要进行操作,所以可能会使你下不去手,困惑。
但是只要抓住本质,按照那个模版来就能写对,这还需要平时多练。
暴力解法就不展示了,就是两个for循环枚举。

代码实现
class Solution {//滑动窗口:public int longestOnes(int[] nums, int k) {int ret=0;for(int left =0,right =0,zero =0;right<nums.length;right++){if(nums[right] == 0){zero++;//进窗口}while(zero>k){//判断if(nums[left++] == 0){zero--;//出窗口}}ret = Math.max(ret,right - left + 1);//更新结果}return ret;}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/16670.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue3:动态路由+子页面(新增、详情页)动态路由配置(代码全注释)

文章目录 实现思路调用后端接口获取用户权限获取页面权限动态绑定到路由对象中动态添加子页面路由 实现思路 emm&#xff0c;项目中使用动态路由实现根据后端返回的用户详情信息&#xff0c;动态将该用户能够访问的页面信息&#xff0c;动态生成并且绑定到路由对象中。但是后…

如何从清空的回收站中恢复已删除的Excel文件?

“嗨&#xff0c;几天前我删除了很多没有备份的Excel文件。回收站已清空。当我意识到我犯了一个大错误时&#xff0c;所有的Excel文件都消失了&#xff0c;回收站里什么都没有。清空回收站后是否可以恢复已删除的 Excel 文件&#xff1f; 回收站是一种工具&#xff0c;可让您在…

LeetCode 343. 整数拆分 (dp动态规划)

343. 整数拆分 力扣题目链接(opens new window) 给定一个正整数 n&#xff0c;将其拆分为至少两个正整数的和&#xff0c;并使这些整数的乘积最大化。 返回你可以获得的最大乘积。 示例 1: 输入: 2输出: 1解释: 2 1 1, 1 1 1。 示例 2: 输入: 10输出: 36解释: 10 3 …

【openlayers系统学习】4.2Mapbox 样式渲染图层

二、Mapbox 样式渲染图层 显然我们目前的地图需要一些样式。 VectorTile​ 图层的样式与 Vector​ 图层的样式工作方式完全相同。那里描述的样式在这里也适用。 对于这样的地图&#xff0c;创建数据驱动的样式&#xff08;对矢量图层操作&#xff09;非常简单。但矢量切片也用…

单兵组网设备+指挥中心:集群系统技术详解

一、单兵设备功能特点 单兵组网设备是现代通信技术的重要成果&#xff0c;旨在为单个作战或工作单元提供高效的通信和数据传输能力。其主要功能特点包括&#xff1a; 1. 便携性&#xff1a;设备轻巧&#xff0c;便于单兵携带和使用&#xff0c;适应各种复杂环境。 2. 通信能…

简述vue-router 组件复用导致路由参数失效怎么办

当使用Vue Router时&#xff0c;组件复用可能会导致路由参数失效的问题。为了解决这个问题&#xff0c;我们可以采取以下策略&#xff1a; 1. 监听路由变化 在Vue组件中&#xff0c;我们可以使用watch属性来监听$route对象的变化。当路由发生变化时&#xff0c;如果目标组件是…

第 8 章 机器人实体导航实现_路径规划(自学二刷笔记)

重要参考&#xff1a; 课程链接:https://www.bilibili.com/video/BV1Ci4y1L7ZZ 讲义链接:Introduction Autolabor-ROS机器人入门课程《ROS理论与实践》零基础教程 9.3.5 导航实现05_路径规划 路径规划仍然使用 navigation 功能包集中的 move_base 功能包。 5.1编写launch文…

PHP之fastadmin系统配置分组增加配置和使用

目录 一、实现功能&#xff1a;fasttadmin实现添加系统配置分组和添加参数、使用 二、添加分组 三、配置分组参数 四、最终存储位置 五、获取配置参数 一、实现功能&#xff1a;fasttadmin实现添加系统配置分组和添加参数、使用 二、添加分组 在字典配置中找到分组对应键值…

linux系统——top资源管理器

在linux系统中&#xff0c;有类似于windows系统中的资源管理器&#xff0c;top用于实时的监控系统的任务执行状态以及硬件配置信息 在linux中&#xff0c;输入top命令&#xff0c;可以进入相应界面&#xff0c;在此界面可以使用一些指令进行操作 如&#xff0c;输入z 可以改变…

终端安全管理系统、天锐DLP(数据泄露防护系统)| 数据透明加密保护,防止外泄!

终端作为企业员工日常办公、数据处理和信息交流的关键工具&#xff0c;承载着企业运营的核心信息资产。一旦终端安全受到威胁&#xff0c;企业的敏感数据将面临泄露风险&#xff0c;业务流程可能遭受中断&#xff0c;甚至整个企业的运营稳定性都会受到严重影响。 因此&#xff…

【EVI】Hume AI 初探

写在前面的话 Hume AI宣布已在B轮融资中筹集5000万美元&#xff0c;由前Google DeepMind研究员Alan Cowen创立并担任CEO。该AI模型专注于理解人类情感&#xff0c;并发布了「共情语音界面」演示&#xff0c;通过语音对话实现互动。从 Hume AI 官网展示的信息&#xff0c;EVI 能…

计算机视觉与深度学习实战:以Python为工具,基于深度学习的汽车目标检测

随着人工智能技术的飞速发展,计算机视觉与深度学习已经成为当今科技领域的热点。其中,汽车目标检测作为自动驾驶、智能交通等系统的核心技术,受到了广泛关注。本文将以Python为工具,探讨基于深度学习的汽车目标检测方法及其实战应用。 一、计算机视觉与深度学习基础 计算机…

力扣刷题--747. 至少是其他数字两倍的最大数【简单】

题目描述 给你一个整数数组 nums &#xff0c;其中总是存在 唯一的 一个最大整数 。 请你找出数组中的最大元素并检查它是否 至少是数组中每个其他数字的两倍 。如果是&#xff0c;则返回 最大元素的下标 &#xff0c;否则返回 -1 。 示例 1&#xff1a; 输入&#xff1a;n…

Python-opencv通过距离变换提取图像骨骼

文章目录 距离变换distanceTransform函数 距离变换 如果把二值图像理解成地形&#xff0c;黑色表示海洋&#xff0c;白色表示陆地&#xff0c;那么陆地上任意一点&#xff0c;到海洋都有一个最近的距离&#xff0c;如下图所示&#xff0c;对于左侧二值图像来说&#xff0c;【d…

Gitee的原理及应用详解(三)

本系列文章简介&#xff1a; Gitee是一款开源的代码托管平台&#xff0c;是国内最大的代码托管平台之一。它基于Git版本控制系统&#xff0c;提供了代码托管、项目管理、协作开发、代码审查等功能&#xff0c;方便团队协作和项目管理。Gitee的出现&#xff0c;在国内的开发者社…

漂流瓶挂机项目,聊天脚本赚钱新玩法,号称单机30-50+ (教程+软件)

一、项目简介&#xff1a; 漂流瓶挂机项目主要是通过使用探遇漂流瓶、音麦漂流瓶等聊天软件&#xff0c;为用户提供一个聊天赚钱的平台。男性用户需要充值后才能发送消息&#xff0c;而女性用户则可以通过接收消息赚取分红。男性用户发送给女性用户的消息费用大约在.1-.2元之间…

VScode中对git的学习笔记

1.git是什么&#xff1f; Git是一个功能强大的分布式版本控制系统&#xff0c;由Linux内核的创始人Linus Torvalds在2005年创建。它以其速度、数据完整性和支持大型项目的能力而闻名&#xff0c;被广泛应用于软件开发中。Git允许开发者在本地机器上拥有完整的代码库副本&#x…

读书笔记分享

1.苏格拉底只在需要的时候才索取&#xff0c;那样便能以最少的物质满足自身的要求。他认为每个人都天生体质脆弱&#xff0c;只有在贫乏的环境中才会锻炼地强壮起来。生活中的大多数人认为&#xff0c;奢华才是幸福的生活。无休止的物质积聚&#xff0c;让人们每天生活在一个内…

2024-05-27 blue-vh-问题点

摘要: 2024-05-27 思考-日记-问题点 问题点: 一. 同步接口的并发问题 接口调用是在客户端的的上下文&#xff0c;无论是线程&#xff0c;协程&#xff0c;是在客户端的执行上下文里面同步的话&#xff0c;是同步客户端的调用接口的上下文&#xff0c;阻塞的是客户端的上下文&a…

SashulinMessageBroker:在消息流中调用C++ DLL

一、背景 在现实应用中&#xff0c;算法、核心逻辑为了追求快速高效的运行速度&#xff0c;很多人都采用C来编写&#xff0c;并打包成动态库供外部使用。SMB针对这种应用场景&#xff0c;提供了DLL组件&#xff0c;实现在消息流中对DLL的动态调用。下实例讲解如何实现DLL as S…