题目:
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
注意:
- 数组不是0就是1
- 我开始一直没想明白,为什么要在循环的时候加上i=length,然后if 的时候要加一个i!=length。后来明白了。就是如果该数组只有一个元素1。如果没有i!=,他的count就不会变成ans不能被记录了。
Code:
public int findMaxConsecutiveOnes(int[] nums) {
int count = 0;
int ans = 0;
for(int i=0;i<=nums.length;i++){
if(i!=nums.length && nums[i]==1){
count++;
}else if(count == 0){
continue;
}else{if (count>ans)
ans = count;
count = 0;
}
}
return ans;
}