leetcode209. 长度最小的子数组 [滑动窗口] 待更正

news2025/3/15 7:41:57

题目

给定一个含有 n 个正整数的数组和一个正整数 target 。

找出该数组中满足其总和大于等于 target 的长度最小的 连续子数组 [numsl, numsl+1, ..., numsr-1, numsr] ,并返回其长度如果不存在符合条件的子数组,返回 0 。

示例 1:

输入:target = 7, nums = [2,3,1,2,4,3]
输出:2
解释:子数组 [4,3] 是该条件下的长度最小的子数组。

示例 2:

输入:target = 4, nums = [1,4,4]
输出:1

示例 3:

输入:target = 11, nums = [1,1,1,1,1,1,1,1]
输出:0s

自己思路(错误)

代码

class Solution {
public:
    int minSubArrayLen(int target, vector<int>& nums) {
        // 10.17 15:00
        int left = 0, right = 0;    // 滑动窗口的左右指针
        int len = nums.size();    // 数组长度
        int res = len + 1;        // 要返回的子数组的长度
        int sum = 0;              // 当前遍历的子数组的和
        while(left < len && right < len){    // 移动滑动窗口
            sum += nums[right++];    // 左指针固定,右指针向右移动并逐渐累加
            if(sum >= target){       // 如果当前滑动窗口中的元素之和>=target,就计算它的长度。并更新最小子数组长度。
                int res1 = right - left;
                if(res1 < res)  res = res1;
                sum = 0;    // 之后移动左指针,重新找子数组
                left++;
                right = left;
            }
        }
        if(res == len + 1)  // 没有找到符合要求的子数组,则返回0
            res = 0;
        
        return res;        
    }
};

运行结果:

超出时间限制

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1103739.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

金融数学方法:有限差分法

目录 1.原理介绍 1.1 有限差分法介绍 1.2 有限差分法步骤 2.案例分析 2.1 问题重述 2.2 问题求解 1.原理介绍 1.1 有限差分法介绍 有限差分法是一种常用的数值计算方法&#xff0c;用于求解偏微分方程或常微分方程的数值解。它的基本思想是将连续的空间区域离散化为有限…

河北建筑模板厂家供应-能强优品木业

随着我国建筑业的蓬勃发展&#xff0c;建筑模板作为一项基础性的建筑材料&#xff0c;在市场需求中占据着举足轻重的地位。在河北建筑模板供应市场中&#xff0c;广西贵港市能强优品木业有限公司以其实力雄厚、品质卓越、性价比极高的特点脱颖而出&#xff0c;成为众多建筑企业…

Sentinel-1主动微波数据下载

Sentinel-1主动微波数据下载 这里主要介绍主动微波数据用于反演陆地参数的情况 GRD文件类型包含多视强度数据&#xff0c;该强度与后向散射系数相关&#xff0c;适合反演土壤水分 IW模式是陆地上的主要采集模式 VVVH的极化方式适合观测陆地 有关各个参数的介绍&#xff0c;使用…

Redis LFU缓存淘汰算法

前言 Redis 在 4.0 版本之前的缓存淘汰算法&#xff0c;只支持 random 和 lru。random 太简单粗暴了&#xff0c;可能把热点数据给淘汰掉&#xff0c;一般不会使用。lru 比 random 好一点&#xff0c;会优先淘汰最久没被访问的数据&#xff0c;但是它也有一个缺点&#xff0c;…

JavaScript系列从入门到精通系列第二十篇:使用工厂方法创建JavaScript对象,JavaScript构造函数详解,JavaScript类概念的介绍

文章目录 一&#xff1a;使用工厂方法创建对象 1&#xff1a;原始写法 2&#xff1a;工厂方式 3&#xff1a;结果验证 二&#xff1a;构造函数 1&#xff1a;什么是构造函数 2&#xff1a;构造函数和普通函数的区别 3&#xff1a;构造函数的执行流程 三&#xff1a;类…

SpringBoot基础详解

目录 SpringBoot自动配置 基于条件的自动配置 调整自动配置的顺序 纷杂的SpringBoot Starter 手写简单spring-boot-starter示例 SpringBoot自动配置 用一句话说自动配置&#xff1a;EnableAutoConfiguration借助SpringFactoriesLoader将标准了Configuration的JavaConfig类…

RPC 接口测试技术 —— websocket 自动化测试实践!

WebSocket 是一种在单个 TCP 连接上进行全双工通信 (Full Duplex 是通讯传输的一个术语。通信允许数据在两个方向上同时传输&#xff0c;它在能力上相当于两个单工通信方式的结合。全双工指可以同时&#xff08;瞬时&#xff09;进行信号的双向传输&#xff08; A→B 且 B→A &…

Spring()

一、导学 二、 1.入门程序 spring快照版本是最新的版本&#xff0c;未发布。需要用到<repository></> 下面这个不需要配置仓库&#xff0c;直接写在依赖中就行 引入spring相关依赖 <?xml version"1.0" encoding"UTF-8"?> <proje…

QT实现凸凹边形等距缩放

参考&#xff1a;https://blog.csdn.net/weixin_39383896/article/details/99615371和https://blog.csdn.net/qq_15821883/article/details/117421400 代码逻辑思路&#xff1a; 1、获取向量AB、BC的坐标。 2、计算向量AB、BC的长度。 3、根据点乘获取cosθ大小。 4、根据cosθ…

LeetCode 高频题目分类列表

&#x1f4a1; LeetCode 高频面试题分类列表&#xff0c;总共24类&#xff0c;312道题目&#xff01; 图 133.克隆图 207.课程表 210.课程表 II 399.除法求值 547.省份数量 684.冗余连接 743.网络延迟时间 785.判断二分图 堆 215.数组中的第K个最大元素 295.数据流的中位数 26…

【性能测试篇1】初识性能测试

目录 性能测试定义 性能测试和功能测试有什么区别 测试工具上面&#xff1a; 特殊业务场景下&#xff1a; 性能测试常见概念&#xff1a; ①用户相关&#xff1a; 1.1并发用户数&#xff1a; 1.2在线用户数&#xff1a; 1.3系统用户数量&#xff1a; ②响应时间相关&…

Golang操作数据库简单示例

目录 准备工作准备数据创建项目连接数据库查询数据修改数据插入数据删除数据释放资源完整代码最终执行结果 准备工作 在开始之前&#xff0c;你需要确保自己安装了Golang的编程环境&#xff0c;安装MySQL数据库&#xff0c;有一个可以用于编写代码的编辑器或IDE工具。我在这里…

大型公共建筑能耗监测与信息管理系统研究及产品选型

摘要&#xff1a;文章通过阐述大型公共建筑能耗现状&#xff0c;突出大型公共建筑实施节能监管的必要性&#xff0c;并在系统总结运用技术手段实施建筑能耗监测的基础上&#xff0c;介绍了江苏省建筑能耗监测系统研究过程中的技术创新和应用情况。 关键词&#xff1a;公共建筑…

深度学习——含并行连接的网络(GoogLeNet)

深度学习——含并行连接的网络&#xff08;GoogLeNet&#xff09; 文章目录 前言一、Inception块二、GoogLeNet模型三、训练模型总结 前言 上篇文章中学习了NIN&#xff0c;而GoogLeNet吸收了NIN中串联网络的思想&#xff0c;并在此基础上做了改进。该论文中的一个观点是&…

PyQt5基础学习(一)

从PyQt5最基础的内容开始学习 import sysfrom PyQt5.QtGui import QIcon from PyQt5.QtWidgets import QWidget, QApplication, QTextBrowserclass Example(QWidget):def __init__(self):super().__init__()self.initUI()def initUI(self):self.resize(300, 300)self.setWind…

数据结构之单链表的模拟实现

&#x1f495;"你笑的次数越多越好&#xff0c;因为你只有用笑才能不怀恶意地消灭罪恶。"&#x1f495; 作者&#xff1a;Mylvzi 文章主要内容&#xff1a;数据结构之单链表的模拟实现 MyArrayList /*** Created with IntelliJ IDEA.* Description:* User: 绿字* …

F5.5G落进现实:目标网带来的光之路

数字化与智能化的世界将走向何方&#xff1f;这个问题有着非常复杂的答案&#xff0c;但其中有一个答案已经十分清晰。那就是智能化的下一步&#xff0c;必将走向泛在万兆的世界。 网络是算力联接的底座&#xff0c;是智能演化的基础。纵观每一代数字化升级&#xff0c;都可以发…

2023秋招华为技术岗线上面试经历

2023/10/16 个人情况&#xff1a;博士&#xff0c;预计2024年毕业&#xff0c;参加了2023秋招&#xff0c;华为应聘到3面主管面。 下面按招聘流程顺序&#xff0c;记录我的面试经历。因为想写详细一点的独立文章&#xff0c;所以想来想去还是放到CSDN上。 1. 宣讲会 宣讲会…

kr 第三阶段(一)16 位汇编

为什么要学习 16 位汇编&#xff1f; 16 位汇编包含了大部分 32 位汇编的知识点。有助于在学习内核的两种模式。 实模式&#xff1a;访问真实的物理内存保护模式&#xff1a;访问虚拟内存 有助于提升调试能力&#xff0c;调试命令与 OllyDbg 和 WinDebug 通用。可以学习实现反…

spring boot整合MongoDB 一

MongoDB介绍 应用场景 传统的关系型数据库&#xff08;如MySQL&#xff09;&#xff0c;在数据操作的“三高”需求以及应对Web2.0的网站需求面前&#xff0c;显得力不从心。 解释&#xff1a;“三高”需求&#xff1a; • High performance - 对数据库高并发读写的需求。 • …