美文网首页
leetcode-1

leetcode-1

作者: Wow_6ea5 | 来源:发表于2020-06-28 10:57 被阅读0次

    给定一个数值s,一个定长数组num,返回该数组所有和大于7的长度最小连续子数组的长度。

    例:int s = 7 ; int[] num = [1,3,5,4,2,1];  和大于7的连续子数组有 [3,5]、[5,4]、[1,3,5]、[3,5,4]...

    长度最小的连续子数组长度为2。

    暴力破解是最容易想到的一种解法,然后还有一种解法我觉得比较巧妙,在这里记录下来:

    采用队列的思想,将数组中的数一个个放入队列,当队列之和大于s,记录当前队列长度,然后将队列头出队列,然后再加入数组的下一个数,继续进行上述判断,最后剩下的队列内容定然是最小长度的子数组,返回最后记录的队列长度即可。

    代码实现的话,不用队列,在数组头尾各加一个指针,代码如下

    相关文章

      网友评论

          本文标题:leetcode-1

          本文链接:https://www.haomeiwen.com/subject/gcuifktx.html