如何使用java查看长度最小的子数组
更新:HHH   时间:2023-1-7


这篇文章主要为大家展示了如何使用java查看长度最小的子数组,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带大家一起来研究并学习一下“如何使用java查看长度最小的子数组”这篇文章吧。

给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的连续子数组。如果不存在符合条件的连续子数组,返回 0。

示例: 

输入: 
输出: 2
解释: 子数组  是该条件下的长度最小的连续子数组。

答案:

 1public int minSubArrayLen(int s, int[] a) {
2    if (a == null || a.length == 0)
3        return 0;
4    int i = 0, j = 0, sum = 0, min = Integer.MAX_VALUE;
5    while (j < a.length) {
6        sum += a[j++];
7        while (sum >= s) {
8            min = Math.min(min, j - i);
9            sum -= a[i++];
10        }
11    }
12    return min == Integer.MAX_VALUE ? 0 : min;
13}

解析:

第一个while循环把每一个元素相加,然后第二个while循环在判断,如果相加结果sum大于等于指定的s,然后再减去最前面的元素再判断,并记录最小值min。记住这里说的是连续的子数组。

Java可以用来干什么

Java主要应用于:1. web开发;2. Android开发;3. 客户端开发;4. 网页开发;5. 企业级应用开发;6. Java大数据开发;7.游戏开发等。

以上就是关于“如何使用java查看长度最小的子数组”的内容,如果该文章对您有所帮助并觉得写得不错,劳请分享给您的好友一起学习新知识,若想了解更多相关知识内容,请多多关注天达云行业资讯频道。

返回大数据教程...