Minimum Size Subarray Sum
来源:互联网 发布:监控计算机的软件 编辑:程序博客网 时间:2024/05/02 00:43
题目描述
Given an array of n positive integers and a positive integer s, find the minimal length of a subarray of which the sum ≥ s. If there isn’t one, return 0 instead.
For example, given the array [2,3,1,2,4,3] and s = 7,
the subarray [4,3] has the minimal length under the problem constraint.
题目解答
题目分析
两个指针, start end, end向后走,直到 sum 大于等于 s. 然后start向后, 直到sum 小于s. 同时更新 min值.
代码实现
public class Solution { public int minSubArrayLen(int s, int[] nums) { if(nums == null || nums.length == 0) return 0; int start = 0, end = 0; int len = nums.length; int sum = 0, min = Integer.MAX_VALUE; while(start < len && end < len) { while(sum < s && end < len) { sum += nums[end]; end++; } while(sum >= s && start <= end) { min = Math.min(min, end-start); sum -= nums[start]; start++; } } return min == Integer.MAX_VALUE ? 0 : min; }}
0 0
- Minimum Size Subarray Sum
- Minimum Size Subarray Sum
- Minimum Size Subarray Sum
- Minimum size subarray sum
- Minimum Size Subarray Sum
- Minimum Size Subarray Sum
- Minimum Size Subarray Sum
- Minimum Size Subarray Sum
- Minimum Size Subarray Sum
- Minimum Size Subarray Sum
- Minimum Size Subarray Sum
- Minimum Size Subarray Sum
- Minimum Size Subarray Sum
- Minimum Size Subarray Sum
- Minimum Size Subarray Sum
- Minimum Size Subarray Sum
- Minimum Size Subarray Sum
- Minimum Size Subarray Sum
- 深入入门正则表达式(java) - 命名捕获
- Java开发岗位面试题归类汇总
- java for循环跳出(break)/结束本次(continue)多重循环
- Android Studio 1.5.1最新版下载地址
- STM32 ADC的规则通道和注入通道的区别
- Minimum Size Subarray Sum
- IQKeyBoardManager - 不用写一行代码就完美解决IOS开发键盘遮挡的类库
- 解决weblogic的JDK和编码问题
- 从Postgres95到PostgreSQL9.5:新版亮眼特性
- virtualbox创建com对象失败(解决方法)
- Oracle数据类型之number
- Bean named '*' must be of type [*], but was actually of type [*] with root case
- 2.bean的命名和实例化、依赖注入方式
- Android Application Architecture