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

输入:[1,1,0,1,1,1]
输出:3
解释:开头的两位和最后的三位都是连续 1 ,所以最大连续 1 的个数是 3.
思路:遍历数组,记录最大个数,时间复杂度为O(n)
class Solution {
    public int findMaxConsecutiveOnes(int[] nums) {
        if(nums.length==0) return 0;
        int maxCount=0;
        int count=0;
        for(int i=0;i<nums.length;i++){
            if(nums[i]==1){
                count++;
            }else{
                maxCount=count>maxCount?count:maxCount;
                count=0;
            }
        }
        maxCount=count>maxCount?count:maxCount;
        return maxCount;
    }
}

 

posted on 2021-08-07 19:23  溪水静幽  阅读(310)  评论(0)    收藏  举报