TypeScript刷LeetCode[9] 485. 最大连续1的个数

2/15/2021 TypeScriptLeetCode算法

# 题目

难度:简单

给定一个二进制数组, 计算其中最大连续 1 的个数。

示例:

输入: [1,1,0,1,1,1]
输出: 3
解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3.

注意:

  • 输入的数组只包含01
  • 输入数组的长度是正整数,且不超过 10,000。

# 代码

30 秒写出来,不过性能不算太好

function findMaxConsecutiveOnes(nums: number[]): number {
    let max = 0
    let count = 0

    nums.forEach(item => {
        if (item === 1) {
            count++
            max = max > count ? max : count
        } else {
            count = 0
        }
    })

    return max
}

点击刷本题吊打我 (opens new window)