485. 最大连续 1 的个数 给定一个二进制数组, 计算其中最大连续 1 的个数。
程序员文章站
2024-03-16 12:59:04
...
原题连接:
https://leetcode-cn.com/problems/max-consecutive-ones/
给定一个二进制数组, 计算其中最大连续 1 的个数。
示例:
输入:[1,1,0,1,1,1]
输出:3
解释:开头的两位和最后的三位都是连续 1 ,所以最大连续 1 的个数是 3.
- 就简单的遍历即可(当然也可用滑动窗口,滑动窗口在另一个专题,这里不贴了就先)
- 当前元素是1 临时变量+1 , 与MAX比较,决定是否更新MAX
- 返回MAX
class Solution {
public int findMaxConsecutiveOnes(int[] nums) {
int max=0;
int temp=0;
for(int i:nums){
if(i==1){
temp++;
if(temp>max){
max=temp;
}
}
else{
temp=0;
}
}
return max;
}
}
上一篇: Android设计模式之浅谈MVP
推荐阅读
-
485. 最大连续 1 的个数 给定一个二进制数组, 计算其中最大连续 1 的个数。
-
JAVA 给定一个无序数组,包含正数、负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1)
-
给定一个无序数组,包含正数、负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1)
-
485.最大连续1的个数(双指针,滑动窗口)
-
485.最大连续1的个数(双指针,滑动窗口)
-
给定一个数组,求数组中最大连续子序列的和
-
给定一个数组,求数组中最大连续子序列的和
-
基础算法:给定一个无序数组,包含正数、负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1)