0
点赞
收藏
分享

微信扫一扫

【力扣算法 LeetCode】485. Max Consecutive Ones 最大连续 1 的个数

大漠雪关山月 2022-04-13 阅读 60

文章目录


前言

题目出自力扣
算法练习题:最大连续 1 的个数


一、题目

最大连续 1 的个数

示例 1:

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

输入:nums = [1,0,1,1,0,1]
输出:2

二、解答

1.代码

代码如下(示例):

class Solution {
    public int findMaxConsecutiveOnes(int[] nums) {
        int n = nums.length;
        int ans1 = 0;//记录最开始连续1的个数
        int ans2 = 0;//如果有更多的 保存到这里
        if (n == 0) {
            return 0;
        }
        for (int i = 0; i < n; i++) {
            if (nums[i] == 1) {
                ans1 = ++ans1;
            } else if (nums[i] == 0) {
                if (ans1 > ans2) {
                // 如果有更多的 保存到这里
                    ans2 = ans1;
                }
                // 遇到0  保存完之后ans1从0开始
                ans1 = 0;
            }
        }
        if (ans1 > ans2) {
            ans2 = ans1;
        }
        return ans2;
    }

2.复盘

其实没啥好说的 思路理清楚之后这题很简单

总结

继续刷题。

举报

相关推荐

0 条评论