题意:给出一个数组,求数组中连续1出现次数最大 的数
思路:记住上一个数,通过与当前数比较
(1)当前数为1,并且前一个数也为1,则计数加1
(2)当前数为1,前一个数不娄1,计数赋值为1
(3)当前数不为1,则更新最大计数,并且当当前计数置为0
代码如下:
var findMaxConsecutiveOnes = function(nums) {
var ans = 0;
var prev = -1;
var tmp = 0;
for (var i = 0; i < nums.length; i++)
{
if (nums[i] == 1)
{
if (prev != 1) tmp = 1;
else if (prev == 1) tmp += 1;
}
else
{
ans = Math.max(ans, tmp);
tmp = 0;
}
prev = nums[i];
}
ans = Math.max(ans, tmp);
return ans;
};