【leetcode】滑动窗口模板
创始人
2024-06-03 07:52:47
0

适用题目关键词:

满足...条件的最长/短(子)字符串

思路:

核心:

  • RL双指针,起始位置,R指针向右逐位滑动循环
  • RL指针间形成窗口

滑动:

1寻找满足条件的最长子串

  • if(窗口内元素满足条件):R继续向右扩大窗口,L不动,更新最优结果
  • if(不满足条件):L向右滑动至R位置,缩小窗口

2寻找满足条件的最短子串

  • if(窗口内元素满足条件):L继续向右缩小窗口,R不动,更新最优结果
  • if(不满足条件):R向右滑动扩大窗口

结束:

  • R到达结尾

模板:

初始化双指针L,R,result,bestResultwhile(R

实例:

leetcode 209. 长度最小的子数组

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

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

public class Solution {public int MinSubArrayLen(int target, int[] nums) {//初始化双指针int r=0,l=0,minL=0,sum=0;int len= nums.Length;//滑动窗口while(r=target){//更新minif(r-l+1

参考:

精心总结滑动窗口代码模板, 直接搞定80道Leetcode算法题

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...
有效的括号 一、题目 给定一个只包括 '(',')','{','}'...
【Ctfer训练计划】——(三... 作者名:Demo不是emo  主页面链接:主页传送门 创作初心ÿ...