【LeetCode-中等题】209. 长度最小的子数组

news/2024/8/19 16:24:04 标签: leetcode, 算法, 职场和发展

文章目录

    • 题目
    • 方法一:滑动窗口:
    • 方法二:

题目

在这里插入图片描述

方法一:滑动窗口:

参考图解动画:长度最小的子数组
在这里插入图片描述

class Solution {
//方法一:滑动窗口
    public int minSubArrayLen(int target, int[] nums) {
      int n = nums.length;
      if(n == 0) return 0;
      int left = 0;
      int res = Integer.MAX_VALUE;
      int sum = 0;
     for(int  right = 0; right<n; right++){
         sum = sum +nums[right];
         while(sum >= target){
              res = Math.min(res, right - left + 1);
             sum -= nums[left];
              left++;
         }
     }
       return res== Integer.MAX_VALUE ? 0 : res;
    }
}
class Solution {
//方法一:滑动窗口
    public int minSubArrayLen(int target, int[] nums) {
      int n = nums.length;
      if(n == 0) return 0;
      int left = 0;
      int res = Integer.MAX_VALUE;
      int right = 0;
      int sum = 0;
      while(right < n){
          sum += nums[right];
          if(sum < target) right++;
          else if(sum >= target){
              res = Math.min(res,right - left + 1);
              sum = sum - nums[left] -nums[right];
              left++;
          }
      }
       return res== Integer.MAX_VALUE ? 0 : res;
    }
}

两种方式都可以 一定要画图理解

方法二:


http://www.niftyadmin.cn/n/5020411.html

相关文章

微信小程序 按钮颜色

<button type"primary">主要按钮样式类型</button> <button type"default">默认按钮样式类型</button> <button type"warn">警告按钮样式类型</button> <view>按钮plain是否镂空</view> <bu…

C++学习第二十二天----函数

1.函数的参数以及局部变量 程序清单7.4&#xff1b; 27f4614 Kite/C和C - Gitee.com 2.函数和数组 程序清单7.5&#xff1b;函数参数是数组 233e36e Kite/C和C - Gitee.com 在c中&#xff0c;当且仅当用于函数头或函数原型中&#xff0c;int *arr 和int arr[ ]的含义相同…

Linux学习笔记-Ubuntu系统下配置用户ssh只能访问git仓库

目录 一、基本信息1.1 系统信息1.2 git版本[^1]1.2.1 服务器端git版本1.2.2 客户端TortoiseGit版本1.2.3 客户端Git for windows版本 二、创建git用户和群组[^2]2.1 使用groupadd创建群组2.2 创建git用户2.2.1 使用useradd创建git用户2.2.2 配置新建的git用户ssh免密访问 2.3 创…

QT QMdiArea控件 使用详解

本文详细的介绍了QMdiArea控件的各种操作&#xff0c;例如&#xff1a;新建界面、源代码、添加界面、移除一个子窗口、设置活动子窗口、子窗口级联排列、子窗口平铺排列、关闭当前子窗口、关闭当前子窗口、返回当前子窗口、返回当前子窗口、返回子窗口列表、信号槽、单击信号、…

【jenkins】采坑合集

目录 ssh command报错&#xff1a; com.jcraft.jsch.JSchException ssh command报错&#xff1a; com.jcraft.jsch.JSchException 问题&#xff1a; jenkins由docker部署&#xff0c;pipeline脚本之前构建一直正常&#xff0c;某天构建突然报错&#xff0c;涉及多处&#xff1…

Charles基础使用指南

##Charles 基本使用指南 Charles 在本地构建一个HTTP代理服务器&#xff0c;可以实现对HTTP、HTTPS请求的抓取&#xff0c;也就是我们常说的抓包&#xff0c;以及对请求响应的修改等。 Charles 官网地址 https://www.charlesproxy.com/ ###一、移动端的抓包实现 1. PC端开启…

Android 13.0 Launcher3定制之双层改单层(去掉抽屉式四)

1.概述 在13.0的系统产品开发中,对于在Launcher3中的抽屉模式中,系统默认的就是抽屉单层模式,但是在很多产品中需要默认为单层模式,就是要求去掉双层抽屉模式,接下来看下如何继续实现去掉抽屉双层模式,来变成单层模式第四节 2.Launcher3定制之双层改单层(去掉抽屉式四)的…

uniapp抽取组件绑定事件中箭头函数含花括号无法解析

版本: "dcloudio/uni-ui": "^1.4.27", "vue": "> 2.6.14 < 2.7"... 箭头函数后含有花括号的时候, getData就拿不到val参数 , 解决办法就是去除花括号 // 错误代码: <SearchComp change"(val) > { getData({ val …