算法day05

第一题

1004. 最大连续1的个数 III

题目如下所示:

如上题所示:

        题目本意是在一个数组中只有1和0,给定一个k值,将小于k个0翻转成1,然后返回最终得到最长的1的个数;

        我们将这到题的意思转化为另外一种意思:在整个数组中找出最长的一个数组,且里面的0的个数不能大于k;

        故此解题思路如下所示:

首先不提采用滑动窗口的解题思路;

步骤一:

        设置左右指针;

步骤二:

        进窗口:

        如果右指针所指数为0,计数器+1;

         如果右指针所指数为,接着往前走;

步骤三:

        判断是否出窗口:

        如果当前计数器数大于k:

                左指针判断是否为零:

                        如为零,计数器-1,左指针移动一位;

                        如不为零,左指针持续移动,直到当前计数器小于k;

        如果当前计数器数小于于k:

                右指针继续向前移动;

同时每一次当判断结束后,都要记录当前连续1的长度

        综上所述,代码如下所示:

class Solution {public int longestOnes(int[] nums, int k) {int res = 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 --;}    }res = Math.max(res,right-left+1);           }return res;}
}

ps:本次的内容就到这里了,如果大家感兴趣的话,就请一键三连哦!!! 

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

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

相关文章

单元测试之TestNG知识点总结及代码示例

TestNG 是一个测试框架&#xff0c;用于自动化测试 Java 和 Scala 应用程序&#xff0c;它是 JUnit 和 NUnit 的一个强大替代品。TestNG 支持数据驱动测试、参数化测试、测试套件、依赖管理、多线程测试等特性。TestNG官网&#xff1a;TestNG Documentation 目录 1.TestNG 基…

100条常见的c语言bug汇总上篇3

21. 忽视错误处理 在编写C语言程序时&#xff0c;错误处理是一个重要的方面。忽视错误处理可能导致程序在遇到问题时无法正确响应&#xff0c;甚至可能导致更严重的后果。 代码案例&#xff1a; #include <stdio.h> #include <stdlib.h> int main() {FILE *file …

PCB笔记(二十六):PCB检查

前言 首先检查元器件是否100&#xff05; 放置 文章目录 1、打开DRC2、database check3、检查DRC4、检查多余的线5、其他需要注意的点a.检查差分线、等长线是否已调好b.注意检查晶振、电感等元件上/下方是否其他线经过&#xff08;一般不允许线经过&#xff09;c.打开place_bo…

【管理咨询宝藏101】普华永道并购尽调内部培训

【管理咨询宝藏101】普华永道并购尽调内部培训 【格式】PDF版本 【关键词】普华永道、兼并收购、尽职调查 【核心观点】 - 尽职调查的目的&#xff0c;发现潜在的致命缺陷&#xff0c;判断是否继续交易进程&#xff1b;发现潜在的问题&#xff0c;制定交易前后相应的应对措施。…

vue阶段性测试题,内容丰富,案例典型,题目配有答案

阶段性测试 理论题实践题 1&#xff09;理论题 请简述Vue、Node.js、Vscode是什么&#xff0c;以及有什么关系 1. vue是一个轻量级、比较灵活的且支持组件开发的网络框架 2. node.js是让JavaScript运行在服务器上的一直环境 3. Vscode是一款有着丰富插件的代码编辑器 4. 关系…

Hive的group by

-- 创建 stu 表 CREATE TABLE stu( id int, name string, age int, sex string ) ROW FORMAT DELIMITED FIELDS TERMINATED BY \t;-- 表内数据 load data local inpath /home/hadoop/stu into table stu; 1 name1 12 boy 2 name2 12 boy 3 name3 13 girl 4 n…

C语言 | Leetcode C语言题解之第88题合并两个有序数组

题目&#xff1a; 题解&#xff1a; void merge(int* nums1, int nums1Size, int m, int* nums2, int nums2Size, int n) {int p1 m - 1, p2 n - 1;int tail m n - 1;int cur;while (p1 > 0 || p2 > 0) {if (p1 -1) {cur nums2[p2--];} else if (p2 -1) {cur nu…

Kali Linux菜单中各工具功能大全

网络安全学习路线 &#xff08;2024最新整理&#xff09; 如图片过大被平台压缩导致看不清的话&#xff0c;评论区点赞和评论区留言扣1或者关注我我后台会主动发给你&#xff01; 第一阶段&#xff1a;安全基础 网络安全行业与法规 Linux操作系统 计算机网络 HTML PHP Mysql P…

【董晓算法】竞赛常用知识之字符串2

前言&#xff1a; 本系列是学习了董晓老师所讲的知识点做的笔记 董晓算法的个人空间-董晓算法个人主页-哔哩哔哩视频 (bilibili.com) 动态规划系列&#xff08;还没学完&#xff09; 【董晓算法】动态规划之线性DP问题-CSDN博客 【董晓算法】动态规划之背包DP问题&#xff…

用Rust打印杨辉三角

一、杨辉三角是什么&#xff1f; 杨辉三角是一个著名的数学图形&#xff0c;它展示了二项式系数的排列方式。 杨辉三角是一种将二项式系数以三角形阵列排列的数学图形&#xff0c;具有丰富的历史和数学意义。 杨辉三角的历史起源可以追溯到中国南宋时期&#xff0c;由数学家杨辉…

极端天气对气膜建筑有什么影响吗—轻空间

气膜建筑在近年来的发展迅速&#xff0c;逐渐替代了一部分传统建筑&#xff0c;展现了良好的市场前景。然而&#xff0c;面对自然环境中的极端天气&#xff0c;如暴风、暴雨和暴雪&#xff0c;气膜建筑是否能够经受住考验是大家关注的焦点。轻空间带您探讨一下这些极端天气对气…

springboot 开启缓存 @EnableCaching(使用redis)

添加依赖 pom.xml <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId> </dependency>application.yml 配置redis连参数 spring:# redis 配置redis:# 地址host: 127.0.0.…

649. Dota2 参议院

649. Dota2 参议院 题目链接&#xff1a;649. Dota2 参议院 代码如下&#xff1a; //贪心算法 class Solution { public:string predictPartyVictory(string senate) {bool Rtrue,Dtrue;// 当flag大于0时&#xff0c;R在D前出现&#xff0c;R可以消灭D。当flag小于0时&#…

JVM 加载 Class 文件的原理机制

Class 文件 Java中的Class文件是编译后的Java源代码文件&#xff0c;它包含了Java程序的字节码指令&#xff0c;也就是实际的执行代码。Class文件是Java程序的中间文件&#xff0c;可以被Java虚拟机&#xff08;JVM&#xff09;加载和执行。在编译Java源代码时&#xff0c;Java…

探究NVMe SSD HMB应用场景与影响-<续>

如果需要采用HMB功能&#xff0c;需要SSD支持NVME协议且NVMe 1.2及以上版本。NVME协议中对HMB对应有2个关键参数&#xff1a; HMB建议值&#xff08;HMPRE&#xff09;&#xff1a;设定实际分配给HMB使用的主机内存容量&#xff0c;为设备提供最优性能的内存分配量。 HMB最小值…

双星号(**)和单星号(*)在Python参数传递中的妙用

在Python中&#xff0c;参数传递是一个非常重要的概念&#xff0c;它允许函数接收任意数量的参数。而双星号(**)和单星号(*)在参数传递中扮演着关键角色。本文将详细讲解这两个符号的用法&#xff0c;并通过示例代码帮助初学者理解它们的工作原理。 单星号(*) 单星号(*)用于函…

EPS软件标注点坐标值

1、如下&#xff0c;点击右侧&#xff08;尺寸标注&#xff09;按钮&#xff1a; 2、弹出一个对话框&#xff0c;如下&#xff1a; 3、在上图对话框中设置好箭头样式和小数位数&#xff0c;然后点击图上一点&#xff0c;右击结束再鼠标指定位置&#xff0c;如下&#xff1a; 如…

CV每日论文--2024.5.10

1、Attention-Driven Training-Free Efficiency Enhancement of Diffusion Models 中文标题&#xff1a;扩散模型的注意力驱动的训练免费效率增强 简介&#xff1a;扩散模型在生成高质量和多样化图像方面取得了出色的表现,但其卓越性能是以昂贵的架构设计为代价的,特别是广泛使…

数据库——SQL SERVER(先学删库跑路)

目录 一&#xff1a;什么是数据库 二&#xff1a;为什么需要数据库 三&#xff1a;数据库的安装 四&#xff1a;学前必备知识 1. 数据库原理 2. 数据库与编程语言 3. 数据库与数据结构的区别 4. 连接 5. 有了编程语言为啥还要数据库 6. 初学者学习数据库的三个方面 …

mplab ide中使用c语言编程,PIC单片机的C语言使用——在MPLAB-IDE中使用HitechC编译器.doc...

mplab ide中使用c语言编程,PIC单片机的C语言使用——在MPLAB-IDE中使用HitechC编译器.doc...-CSDN博客