LeetCode 485 Max Consecutive Ones
Given a binary array, find the maximum number of consecutive 1s in this array.
Example 1:
Input: [1,1,0,1,1,1]
Output: 3
Explanation: The first two digits or the last three digits are consecutive 1s.
The maximum number of consecutive 1s is 3.
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
分析:给定一个01序列数组,求最大码重(原来从通信转行)
public int findMaxConsecutiveOnes(int[] nums) {
int max=0;
int current=0;
for (int i = 0; i <nums.length ; i++) {
if(nums[i]==1)
current=current+1;
else
{
if(max<current)
max=current;
current=0;
}
}
if(current !=0 && max <current)
max=current;
return max;
}
求最大值:设置一个变量存放当前的最大值,设置另一个变量存放当前值,每次比较替换。
使用max=Math.max(max,current)更为简单。