leetcode如何计算最大连续1的个数
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,这篇文章主要介绍leetcode如何计算最大连续1的个数,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、题目内容给定一个二进制数组, 计算其中最大连续 1 的个数。示例:输入
千家信息网最后更新 2025年12月02日leetcode如何计算最大连续1的个数
这篇文章主要介绍leetcode如何计算最大连续1的个数,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
一、题目内容
给定一个二进制数组, 计算其中最大连续 1 的个数。
示例:
输入:[1,1,0,1,1,1]
输出:3
解释:开头的两位和最后的三位都是连续 1 ,所以最大连续 1 的个数是 3.
提示:
输入的数组只包含 0 和 1 。
输入数组的长度是正整数,且不超过 10,000。
二、解题思路
1.直接记录长度然后每次比较大小即可;
2.滑动窗口,每次增加窗口长度,直到为0则记录长度并比较当前最大的长度,然后重新从为1的地方开始记录长度,如此反复比较即可;
三、代码
class Solution: def findMaxConsecutiveOnes1(self, nums: list) -> int: count = 0 ans = 0 for num in nums: if num == 1: count += 1 ans = max(ans, count) else: count = 0 return ans def findMaxConsecutiveOnes2(self, nums: list) -> int: left, right = 0, 0 ans = 0 while right < len(nums): if nums[right] == 1: right += 1 else: ans = max(ans, right - left) right += 1 left = right ans = max(ans, right - left) return ansif __name__ == '__main__': s = Solution() nums = [1, 1, 0, 1, 1, 1] ans1 = s.findMaxConsecutiveOnes1(nums) print(ans1) ans2 = s.findMaxConsecutiveOnes2(nums) print(ans2)
以上是"leetcode如何计算最大连续1的个数"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
长度
最大
个数
内容
数组
输入
篇文章
二进制
代码
价值
兴趣
地方
大小
小伙
小伙伴
开头
思路
整数
更多
知识
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
软件开发营业执照办理
网络安全意识案例分析
安庆市迎江区远处网络技术服务部
长沙拾信互联网科技有限公司
可以连接的网络安全产品
宿州餐饮软件开发定制
大学生维护网络安全黑板报
网络安全等级保护测评企业
美国enzu服务器
太仓营销网络技术怎么样
网络安全防护技战法
河北安全接入服务器地址
服务器无线认证
电商平台数据库泄露
两新组织党建数据库
网络安全全球公害
主机DB2数据库表结构
软件开发属于 国家规划
2020年网络安全公司排行
企业网络安全等级保护通知
网络安全视频动画下载
网络安全 航天科工
什么场景下用数据库
浏览器不能访问局域网内的服务器
数据库插入太慢
我的世界电脑包服务器
河池软件开发制作
应用于网络安全管理的技术
app开发数据库用什么
淮南互联网科技公司