java数据结构与算法刷题-----LeetCode485. 最大连续 1 的个数

LeetCode-485. 最大连续1的个数 题目 给定一个二进制数组, 计算其中最大连续1的个数。 示例 1: 输入: [1,1,0,1,1,1] 输出: 3 解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3. 注意: 输入的数组只包含 0 和1。 输入数组的长度是正整数,且不超过 10,000。 解题 使用一个变量max记录连续1的最大个数 遍历数次, 同时使用一个临时数组, 记录遍历过程中连续1的最大个数, 当... 阅读详情
java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.youkuaiyun.com/grd_java/article/details/123063846

在这里插入图片描述

1. 法一,双指针

  1. 首先用left指针,定位到一个含有1的子区间左边界,然后让right从left位置尝试找到这个子区间的右边界
  2. 如果已经完成了一个子区间的统计,数组还没有遍历完,让left从right的位置,继续。
  3. 类似一个滑动窗格
代码:时间复杂度O(n).空间复杂度O(1)

在这里插入图片描述

class Solution {
    public int findMaxConsecutiveOnes(int[] nums) {
        int left=0,right = 0;//双指针
        int n = nums.length;//数组长度
        int ans = 0;//保存结果
        for(left = 0;left<n;left++){//左指针先遍历
            if(nums[left]==1){//如果左指针找到1
                for(right = left;right<n&&nums[right]==1;right++);//右指针从左指针位置找第一个不是1的,或者无元素可遍历
                ans = Math.max(right-left,ans);//保存本次左右指针所指区间长度和已经保存的区间长度,大的那个
                left = right;//左指针从右指针的位置继续
            }
        }
        return ans;//返回结果
    }
}

2. 法二:变量计数

和双指针类似,当我们发现一个1后,用count变量开始统计个数。如果一个区间统计完成后,数组没有遍历完成,那么记录当前count和已经记录的count谁大,然后count归0重新开始统计下一个区间。

代码:时间复杂度O(n).空间复杂度O(1)

在这里插入图片描述

class Solution {
    public int findMaxConsecutiveOnes(int[] nums) {
        int ans = 0, count = 0;//ans保存结果,count保存本次区间的1的个数
        int n = nums.length;//数组长度
        for(int i = 0;i<n;i++){//依次遍历
            if(nums[i]==1) count++;//如果发现1,count开始累加
            else{//如果发现当前元素不是1了,可能区间中断,或者当前本身就不是1的区间
                ans = Math.max(ans,count);//无论如何,保存已经保存的区间1个数,和当前1的个数,选择大的
                count = 0;//count重新开始累加
            }
        }
        //如果数组某区间,遍历完成后,没有发现不是1的,上面for循环的ans统计,会少掉末尾区间的
        //在这里补上
        ans = Math.max(ans,count);//选择大的
        return ans;//返回结果
    }
}
PyCharm安装PyQt5及工具(Qt Designer、PyUIC、PyRcc)详细教程来了 Qt是常用的用户界面设计工具,而在Python中则使用PyQt这一工具包,它是Python编程语言和Qt库的成功融合。这篇博文通过图文详细介绍在PyCharm中如何完整优雅地安装配置PyQt5的所有工具包,主要内容包括PyQt5、PyQt5-tools的依赖包安装和Qt Designer、PyUIC、PyRcc三个工具的设置。最后简单演示了PyQt5的调用方式及三个工具的使用方法。 阅读详情

相关推荐

Dify-前端本地运行-单点登录

本文介绍了如何在已部署Dify的系统中实现AI应用跳转及页面定制化改造。通过iframe跳转无法满足甲方需求后,作者对Dify前端源码进行了本地化二次开发,主要步骤包括:1) 按照官方文档搭建本地开发环境;2) 修改.env配置文件连接部署好的后端服务;3) 隐藏侧边栏和头部导航栏;4) 实现单点登录功能,通过URL参数获取用户邮箱自动登录。过程中解决了请求拦截导致的登录校验问题,最终达成仅保留对话框界面并同步用户信息的需求。该方案涉及Next.js框架和React技术的应用,为类似定制化需求提供了参

weixin_43163457的博客 3227

Java实现 LeetCode 485 最大连续1的个数

485. 最大连续1的个数 给定一个二进制数组, 计算其中最大连续1的个数。 示例 1: 输入: [1,1,0,1,1,1] 输出: 3 解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3. 注意: 输入的数组只包含 0 和1。 输入数组的长度是正整数,且不超过 10,000。 class Solution { public int findMaxConsecutiv...

南 墙 1万+

机器学习发展历史及现状(重要的期刊,会议,大牛总结)

1 引言 机器学习是指通过计算机学习数据中的内在规律性信息,获得新的经验和知识,以提高计算机的智能性,使计算机能够像人那样去决策。随着各行业对数据的需求量增多,对处理和分析数据的效率要求变高,一系列机器学习算法应运而生。机器学习算法主要是指通过数学及统计方法求解最优化问题的步骤和过程。针对不同的数据和不同模型需求,选择和使用适当的的机器学习算法可以更高效地解决一些实际问题。本文将从机器学习的起源...

Oscar2018的博客 5万+

【leetcode刷题】52.最大连续 1 的个数——Java版

水题

公号:一条coding 1万+

JSSIP实战:5分钟搞定WebRTC电话功能(附完整代码示例)

本文通过JSSIP库实战演示如何在Web应用中快速集成WebRTC电话功能。文章提供了从环境准备、SIP服务器连接到完整代码示例的详细步骤,涵盖用户注册、拨号接听、媒体流处理等核心环节,并针对常见问题给出排查方案,帮助开发者高效实现网页端实时语音通信。

u8v9w0x1y的博客 518

别只刷题了!我用834分经验告诉你,华为HCIP大数据考试(H13-723)这样准备更高效

本文分享了华为HCIP大数据认证(H13-723)834分通关的高效备考经验。通过分析考试动态、题库验证技巧和章节优先级策略,帮助考生超越单纯刷题,系统化掌握核心知识点。特别强调实时流处理和离线批处理等重点章节,提供黄金90分钟临场发挥策略,助力考生一次性通过考试。

weixin_38168786的博客 460

【LeetCode每日一题】——485.最大连续 1 的个数

给定一个二进制数组 nums , 计算其中最大连续 1 的个数。

IronmanJay 1239

Cryptomatte For Nuke的安装

进入官网https://github.com/Psyop/Cryptomatte,下载文件代码。 将Cryptomatte/nuke里的文件内容复制粘贴到 .nuke文件夹内。 在我们复制粘贴的内容中可以看到两个文件。 同时,我们进入nuke的下载目录,打开plugins文件夹,看到和插件中一样python文件——init.py和menu.py。 我们将Cryptomatte里的init.py和menu.py里的python代码复制粘贴到Nuke/plugins下的init...

qq_41627587的博客 9063

LeetCode(力扣)数组篇 JAVA刷题详解

是不是有许多小伙伴在刷力扣的时候感觉无从下手?从头按顺序开始刷的童鞋们可能会比较有感触,为什么才第四题就感觉很难了?没关系,本文将对力扣的 1-500 题中不需要会员的数据结构与算法题目(数据库与 shell 除外)进行分类,并推荐一个刷题的顺序。完全零基础可以刷题吗?不能,至少要基本掌握一门计算机语言的语法。但现在在网上随便搜一下就能搜到许多关于计算机语言的教程。当然,最好还是上一下正规的课程。刷题顺序很重要吗?重要。按照题目类别结构化地刷题的速度不仅更快,而且可以在刷完一类题之后进行总结。

weixin_61779644的博客 2538

NPC 三电平逆变器中点电位平衡算法详解

最常用:零序电压注入(简单、计算量小)最可靠:虚拟空间矢量调制(VSVPWM)及其改进形式(全范围平衡)趋势:结合模型预测控制(MPC)或智能算法(模糊、神经网络)进一步提升动态性能和鲁棒性。NPC 三电平逆变器中点电位平衡算法的 C# 实现示例(零序电压注入法 + 闭环补偿)在 NPC(Neutral Point Clamped)三电平逆变器中,中点电位平衡最常用且易于软件实现的方案是零序电压注入法。

专注于前沿技术的探索与实践,热衷于从代码逻辑、架构设计到行业应用等多维度深挖技术本质。期待在技术之路上与你共同成长~ 325

2ED2410-EM:12v / 24v智能模拟高侧MOSFET栅极驱动器

12v / 24v智能模拟高侧MOSFET栅极驱动器。2ED2410-EM具有输入CPP和CPN的电压比较器。该比较器可用于基于任何模拟电压触发SAFESTATE模式,甚至是外部电压2ED2410-EM。CPP为比较器的正输入,CPN为负输入。VcPREF可以通过微控制器进行调节,也可以通过板载电源芯片(如英飞凌SBC)或简单的分压器在限制VcP(REF)内进行固定,以保持稳定性。使用此比较器允许2ED2410-EM进入SAFESTATE并独立于微控制器关闭MOSFET。

让学习成为一种习惯 2199

leetcode - 485 最大连续1的个数 -java版

文章目录题目代码 题目 给定一个二进制数组, 计算其中最大连续1的个数。 示例 1: 输入: [1,1,0,1,1,1] 输出: 3 解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3. 注意: 输入的数组只包含 0 和1。 输入数组的长度是正整数,且不超过 10,000。 代码 /* * @lc app=leetcode.cn id=485 lang=java * * [...

lingle1的博客 574

「企业级智能体」LangChain4j Multi-Agent:角色分离 + 协同编排实战

在大部分 Java 项目里,“接入大模型Controller 收到一个 question调用大模型接口拿到 answer把结果原样丢回前端这种玩法可以叫「高配搜索框模式一个 Agent 要写 Prompt、要查数据库、还要改写文案,太忙了不同角色(创作者、编辑、审稿人)的职责混在一起,难以维护想复用其中一段能力(比如只要润色)也不方便把大任务拆成多个 “角色清晰的 Agent”,再编排它们像流水线一样协同完成任务。CreativeWriter:负责创作故事。

OFFTime_we的博客 1554

LeetCode刷题485-简单-最大连续1的个数

算法作为极其重要的一点,是大学生毕业找工作的核心竞争力,所以为了不落后与人,开始刷力扣算法题!

布小禅的博客 1295

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

LeetCode 485. 最大连续1的个数

1. 题目 给定一个二进制数组, 计算其中最大连续1的个数。 示例 1: 输入: [1,1,0,1,1,1] 输出: 3 解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3. 注意: 输入的数组只包含 0 和1。 输入数组的长度是正整数,且不超过 10,000。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/max-...

Michael是个半路程序员 1181

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

2. leetCode--485最大连续1的个数

1. leetCode–485最大连续1的个数 Java遍历集合的几种方法分析(实现原理、算法性能、适用场合) 题目连接:https://leetcode-cn.com/problems/max-consecutive-ones 题目类型: 简单数组 1.1 问题描述 给定一个二进制数组, 计算其中最大连续1的个数。 示例 1: 输入: [1,1,0,1,1,1] 输出: 3 解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3。 注意: 输入的数组只包含 0 和

weixin_45267102的博客 255

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Leetcode 485. 最大连续1的个数

Leetcode 485. 最大连续1的个数 给定一个二进制数组, 计算其中最大连续1的个数。 示例 1: 输入: [1,1,0,1,1,1] 输出: 3 解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3. 注意: 输入的数组只包含 0 和1。 输入数组的长度是正整数,且不超过 10,000。 常规遍历 class Solution { public int findMaxConsecutiveOnes(int[] nums) { int count = 0;

EIUC_Thread的博客 281

LeetCode 485:连续最大1的个数 Max Consecutive Ones(python java)

LeetCode 485:连续最大1的个数 Max Consecutive Ones 给定一个二进制数组, 计算其中最大连续1的个数。 Given a binary array, find the maximum number of consecutive 1s in this array. 示例 1: 输入: [1,1,0,1,1,1] 输出: 3 解释: 开头的两位和最后的三位都是连续1,所以...

爱写Bug 329

从0开始刷力扣

🎉🎉🎉写在前面: 博主主页:🌹🌹🌹戳一戳,欢迎大佬指点! 博主秋秋:QQ:1477649017 欢迎志同道合的朋友一起加油喔💪 目标梦想:进大厂,立志成为一个牛掰的Java程序猿,虽然现在还是一个小菜鸟嘿嘿 -----------------------------谢谢你这么帅气美丽还给我点赞!比个心----------------------------- 从0开始刷力扣一,数组类1.1,数组的遍历 推荐一篇规划刷题顺序的文章,如果有小伙伴和我一样不知道咋刷题,可以去康康哦! 戳戳这里&gt..

qq_61688804的博客 1049

力扣第485题:最大连续1的个数

学习目标: 力扣485. 最大连续1的个数 学习内容: 给定一个二进制数组, 计算其中最大连续1的个数。 示例 1: 输入: [1,1,0,1,1,1] 输出: 3 解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3. 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/max-consecutive-ones 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 学习时间: 2020年10月23日 学习产出:

童一的博客 238

力扣刷题日记之最大的连续1的个数

今天继续给大家分享一道力扣的做题心得今天这道题目是 485.最大的连续1的个数题目如下,题目链接:https://leetcode.cn/problems/max-consecutive-ones 这是一道很简单的题目,题目给了一个数组,其中全部都是1或者0这个两个元素,我使用了直接进行遍历所给数组然后记录最大的连续的个数的方式来直接解题下面是我的解题代码 下面是力扣官方题解 官方解题思路:一次遍历 为了得到数组中最大连续 1 的个数,需要遍历数组,并记录最大的连续 1

ymr1843762281的博客 422

LeetCode:485.最大连续1的个数——简单题简单做

我们可以发现我们目标返回值为3.count在遍历过程中是一个记录清理再记录的过程。而maxCount只保持最大的count数。这个通过Java的Math类库的max方法实现。我们定义一个指针i,从前到后的遍历目标数组,同时设置两个遍历——count和maxCount,开头的两位和最后的三位都是连续 1 ,所以最大连续 1 的个数是 3.count变量在指针i遍历到元素0时清零。, 计算其中最大连续。

2301_78566776的博客 689

485. 最大连续1的个数——Java

给定一个二进制数组, 计算其中最大连续1的个数。 示例 1: 输入: [1,1,0,1,1,1] 输出: 3 解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3. 注意: 输入的数组只包含 0 和1。 输入数组的长度是正整数,且不超过 10,000。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/max-consecutive-ones 方法一:一次遍历 用一个计数器 tmp 记录 1 的数量,另一个计数器 count 记录当前

lz_Shawn的博客 376

​LeetCode刷题实战485:最大连续 1 的个数

算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 !...

程序IT圈 332

[LeetCode] 485.最大连续 1 的个数(Java)

给定一个二进制数组nums, 计算其中最大连续1的个数。

是猛男|二次元|玩原神|含盐量极高|不是GAY|不玩币|不接单 1574
上一篇: java数据结构与算法刷题-----LeetCode566. 重塑矩阵
下一篇: java数据结构与算法刷题-----LeetCode240. 搜索二维矩阵 II
ydenergy_殷志鹏
博客等级 码龄7年 5887粉丝 543原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ydenergy_殷志鹏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值