打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
滑块思想解决连续子数组问题。
给1个整数s,和一个数组sums,求连续的子数组之和大于等于s的最小长度。
设想一个滑块在数组中滑动,只要滑块中元素的和>=s就在其中判断更新最小长度,并缩小滑块长度。源码如下
public int minSubArrayLen(int s, int[] a) { if (a == null || a.length == 0) return 0; int i = 0, j = 0, sum = 0, min = Integer.MAX_VALUE; while (j < a.length) { sum += a[j++]; while (sum >= s) { min = Math.min(min, j - i); sum -= a[i++]; } } return min == Integer.MAX_VALUE ? 0 : min;}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
390,长度最小的子数组
0454. 4Sum II (M)
华为机试题
LeetCode 15. 三数之和(中等)
1. Two Sum
Java学习总结之第九章 数组
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服