当前位置: 首页 > news >正文

【(含模板)滑动窗口 - LeetCode】3. 无重复字符的最长子串

题目:

3. 无重复字符的最长子串 - 力扣(LeetCode)

类型:滑动窗口

题解:

利用滑动窗口,窗口内(开一个集合或者其他存储结构)符合条件时,窗口右边 向右移动(扩大窗口),不符合条件时,窗口左边向右移动(缩小窗口)。

在官方题解看到了一个写的非常棒的滑动窗口模版!

//外层循环扩展右边界,内层循环扩展左边界
for (int l = 0, r = 0 ; r < n ; r++) {//当前考虑的元素//区间[left,right]不符合题意while (l <= r && check()) {//扩展左边界}//区间[left,right]符合题意,统计相关信息
}

本题题解:

class Solution {
public:int lengthOfLongestSubstring(string s) {unordered_set<char>st;int n = s.size();int ans = 0;for(int l = 0, r = 0; r < n; r ++){char ch = s[r];while(st.count(ch)){st.erase(s[l]);l ++;}st.insert(s[r]);int tmp_ans = st.size();ans = max(tmp_ans, ans);}return ans;}
};

官方题解:

3. 无重复字符的最长子串 - 力扣(LeetCode)

http://www.xdnf.cn/news/1357759.html

相关文章:

  • 基于深度学习的餐盘清洁状态分类
  • 基于stm32汽车雨刮器控制系统设计
  • 普元低代码开发平台:开启企业高效创新新征程
  • SQL Server从入门到项目实践(超值版)读书笔记 24
  • 【C++】 9. vector
  • 线段树相关算法题(2)
  • 3D打印机管理后台与RabbitMQ集成的业务场景
  • Windows Server存储副本智能同步优化方案
  • 【RAGFlow代码详解-4】数据存储层
  • 第四章:大模型(LLM)】07.Prompt工程-(12)其他prompt方法
  • 人工智能之数学基础:离散型随机变量
  • 【中文教材】13. 资本流动与外汇市场
  • Redis 高可用开发指南
  • 支持多种模型,无限AI生图工具来了
  • HTTP 接口调用工具类(OkHttp 版)
  • 华为网路设备学习-30(BGP协议 五)Community、
  • pytorch线性回归(二)
  • elasticsearch 7.x elasticsearch 使用scroll滚动查询中超时问题案例
  • MySQL官方C/C++ 接口入门
  • Ubuntu24.04 安装 Zabbix
  • ComfyUI ZLUDA AMD conda 使用遇到的问题
  • rust语言 (1.88) egui (0.32.1) 学习笔记(逐行注释)(十五)网格布局
  • 【229页PPT】某大型制药集团企业数字化转型SAP蓝图设计解决方案(附下载方式)
  • 目标检测数据集 第006期-基于yolo标注格式的汽车事故检测数据集(含免费分享)
  • 网络协议UDP、TCP
  • 管道符在渗透测试与网络安全中的全面应用指南
  • 【信息安全】英飞凌TC3xx安全调试口功能实现(调试口保护)
  • OSG库子动态库和插件等文件介绍
  • AlmaLinux 上 Python 3.6 切换到 Python 3.11
  • 从 JUnit 深入理解 Java 注解与反射机制