滑动窗口中等 LeetCode1004. 最大连续1的个数 III

阅读: 评论:0

滑动窗口中等 LeetCode1004. 最大连续1的个数 III

滑动窗口中等 LeetCode1004. 最大连续1的个数 III

1004. 最大连续1的个数 III

描述

给定一个二进制数组 nums 和一个整数 k,如果可以翻转最多 k 个 0 ,则返回 数组中连续 1 的最大个数 。

分析

最大滑动窗口 只要left与right之间0的个数不超过k,就不断拓展right,超过了就移动left。
右指针每次向右移动一位,左指针只有0的个数超过k时向右移动。
右指针每移动一次都计算一次“最长连续1的个数”。

class Solution {public int longestOnes(int[] nums, int k) {int left = 0, right = 0;int ans = 0, count = 0;while (right < nums.length) {if (nums[right] == 0) {count++;}while (count > k) {if (nums[left] == 0) {count--;}left++;}ans = Math.max(ans,right - left + 1);right++;}return ans;}
}

本文发布于:2024-01-27 21:10:36,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/17063610352661.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:个数   窗口   III
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23