跳至主要內容

485. 最大连续 1 的个数


485. 最大连续 1 的个数

🟢   🔖  数组  🔗 力扣open in new window LeetCodeopen in new window

题目

Given a binary array nums, return the maximum number of consecutive1 ' s in the array.

Example 1:

Input: nums = [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.

Example 2:

Input: nums = [1,0,1,1,0,1]

Output: 2

Constraints:

  • 1 <= nums.length <= 10^5
  • nums[i] is either 0 or 1.

题目大意

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

注意:

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

解题思路

  • 给定一个二进制数组, 计算其中最大连续 1 的个数。
  • 简单题。扫一遍数组,累计 1 的个数,动态维护最大的计数,最终输出即可。

代码

/**
 * @param {number[]} nums
 * @return {number}
 */
var findMaxConsecutiveOnes = function (nums) {
	let max = 0;
	let count = 0;
	for (let i = 0; i < nums.length; i++) {
		if (nums[i] == 1) {
			count++;
		} else {
			count = 0;
		}
		max = Math.max(max, count);
	}
	return max;
};

相关题目

题号标题题解标签难度力扣
487最大连续1的个数 II 🔒数组 动态规划 滑动窗口🟠🀄️open in new window 🔗open in new window
1004最大连续1的个数 III[✓]数组 二分查找 前缀和 1+🟠🀄️open in new window 🔗open in new window
1446连续字符字符串🟢🀄️open in new window 🔗open in new window
1869哪种连续子字符串更长字符串🟢🀄️open in new window 🔗open in new window
2414最长的字母序连续子字符串的长度字符串🟠🀄️open in new window 🔗open in new window
2511最多可以摧毁的敌人城堡数目数组 双指针🟢🀄️open in new window 🔗open in new window