文章目录
前言
题目出自力扣
算法练习题:最大连续 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.复盘
其实没啥好说的 思路理清楚之后这题很简单
总结
继续刷题。