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

栏目: Python · 发布时间: 6年前

内容简介:公众号:爱写bug给定一个二进制数组, 计算其中最大连续1的个数。Given a binary array, find the maximum number of consecutive 1s in this array.

公众号:爱写bug

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

Given a binary array, find the maximum number of consecutive 1s in this array.

示例 1:

输入: [1,1,0,1,1,1]
输出: 3
解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3.

注意:

  • 输入的数组只包含 01
  • 输入数组的长度是正整数,且不超过 10,000。

Note:

  • The input array will only contain 0 and 1 .
  • The length of input array is a positive integer and will not exceed 10,000

解题思路:

​ 记录一个指针向右移动,用一个数记录1的个数,遇1就累加1,遇0就倒置为0。具体见 Java 注释。

Java:

class Solution{
    public int findMaxConsecutiveOnes(int[] nums) {
        int temp=0,count=0;//temp记录当前连续1的个数,count记录当前最大连续1的个数
        for (int i=0;i<nums.length;i++){//指针右移
            if(nums[i]==1){
                temp++;//遇1累加1
            }else{
                if(count<temp){
                    count=temp;//记录目前最大连续1的个数
                }
                temp=0;//遇0倒置为0
            }
        }
        return (count>temp)? count:temp;//返回count、temp中较大的数
    }
}

注意:

​ 返回值必须是 counttemp 中较大的一个。明明已经比较了 counttemp ,并把较大的赋值给 count ,很明显是 count 更大,为什么还要比较?

​ 这是因为还有一种输入数组全为1的情况,此时temp一直累加,从未遇到0,所以count自始至终都不可能得到temp的值。

python3:

class Solution:
    def findMaxConsecutiveOnes(self, nums: List[int]) -> int:
        count=temp=0
        for num in nums:
            if num==1:
                temp+=1
            else:
                if(count<temp):
                    count=temp
                temp=0
        return count if count>temp else temp

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


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

R语言编程艺术

R语言编程艺术

(美)Norman Matloff / 陈堰平、邱怡轩、潘岚锋 等 / 机械工业出版社 / 2013-5 / 69.00

【编辑推荐】 这本书涵盖了R语言编程的诸多方面,尤其在面向对象编程、程序调试、提升程序运行速度以及并行计算等方面,填补了同类图书的空白。关于程序调试的章节更是作者多年经验的总结。不管是初学者还是有一定编程经验的读者,阅读这本书都会有所收获。 ——统计之都 【内容简介】 R语言是世界上最流行的用于数据处理和统计分析的脚本语言。考古学家用它来跟踪古代文明的传播,医药公司用它来探......一起来看看 《R语言编程艺术》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

随机密码生成器
随机密码生成器

多种字符组合密码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器