【LeetCode】3.无重复字符的最长字串

目录

题目

题目链接:LeetCode-3题

给定一个字符串 s ,请你找出其中不含有重复字符的最长子串的长度。

算法解法

解法一 暴力枚举 + 哈希表(判断字符是否重复出现) (O( n 2 n^{2} n2))

枚举每一个位置能到达的终点。
简单解法,不讲解。

解法二 滑动窗口 + 哈希表(判断字符是否重复出现)

  1. 滑动窗口的左窗口left = 0,右边窗口right = 0
  2. 进窗口 让字符进入哈希表
  3. 判断是否出现重复字符,如果有,出窗口,从哈希表中删除该字符
  4. 更新结果

代码

class Solution {
public:unordered_map<char,int> hash;int lengthOfLongestSubstring(string s) {int ret = 0; //存结果//滑动窗口int left = 0;int right = 0;for(right;right<s.size();right++){//进窗口hash[s[right]]++;//出窗口while(hash[s[right]]>1) {hash[s[left]]--;left++;}//更新结果ret = max(ret,right-left+1);}return ret;}
};

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

保持角色一致性的绘本生成AI开源项目之Story-Adapter本地部署Windows篇

本文已首发&#xff1a;秋码记录 在人工智能领域&#xff0c;生成一致且连贯的故事绘本一直是一个具有挑战性的任务。Story-Adapter作为一个开源项目&#xff0c;旨在解决这一问题&#xff0c;为用户提供无需训练即可生成长篇故事视觉化的工具。本文将指导您如何在Windows系统…

[JVM篇]垃圾回收器

垃圾回收器 Serial Seral Old PartNew CMS(Concurrent Mark Sweep) Parallel Scavenge Parallel Old G1 ZGC

字符串(典型算法思想)—— OJ例题算法解析思路

目录 一、14. 最长公共前缀 - 力扣&#xff08;LeetCode&#xff09; 解法一&#xff1a;算法代码&#xff08;两两比较&#xff09; 1. 初始化公共前缀 2. 遍历字符串数组 3. 辅助函数 findCommon 4. 返回最终结果 总结 解法二&#xff1a;算法代码&#xff08;统一比较…

宝塔面板开始ssl后,使用域名访问不了后台管理

宝塔面板后台开启ssl访问后&#xff0c;用的证书是其他第三方颁发的证书 再使用 域名/xxx 的形式&#xff1a;https://域名:xxx/xxx 访问后台&#xff0c;结果出现如下&#xff0c;不管使用 http 还是 https 的路径访问都进不后台管理 这个时候可以使用 https://ip/xxx 的方式来…

java继承

1.继承的内存图 2.成员方法不能被继承 虚方法表满足&#xff1a;1.非static、2.非private、3.非final

通用知识库问答流程

总体流程&#xff0c;定义回调&#xff08;函数执行完把回答的内容填充到数据库&#xff09;&#xff0c;使用封装的fastchat获取调用的模型&#xff0c; 根据向量数据库名&#xff0c;获取向量数据库实例 这是ssl 长连接的一种标准写法&#xff0c;首先写一个 生成器函数&…

WPS/Office使用其他LLM大语言模型作为AI助手

前言 WPS也有内置的AI&#xff0c;叫灵犀&#xff0c;但只能说是属于“能用&#xff0c;有好过无”&#xff0c;所以我一直在找能否在WPS上用上其他的LLM大语言模型&#xff0c;比如目前最火的DeepSeek&#xff0c;结论是&#xff1a;安装OfficeAI助手&#xff0c;就能在WPS上用…

亲测有效!使用Ollama本地部署DeepSeekR1模型,指定目录安装并实现可视化聊天与接口调用

文章目录 一、引言二、准备工作&#xff08;Ollama 工具介绍与下载&#xff09;2.1 Ollama介绍2.2 Ollama安装 三、指定目录安装 DeepSeek R1四、Chatbox 可视化聊天搭建4.1 Chatbox下载安装4.2 关联 DeepSeek R1 与 Chatbox 的步骤 五、使用 Ollama 调用 DeepSeek 接口5.1 请求…

4.SpringSecurity在分布式环境下的使用

参考 来源于黑马程序员&#xff1a; 手把手教你精通新版SpringSecurity 分布式认证概念说明 分布式认证&#xff0c;即我们常说的单点登录&#xff0c;简称SSO&#xff0c;指的是在多应用系统的项目中&#xff0c;用户只需要登录一次&#xff0c;就可以访 问所有互相信任的应…

傅里叶公式推导(五)

文章目录 从离散到连续回顾第四章F(w) 从离散到连续 回顾第四章 在周期 T&#xff0c; 傅里叶变换公式 f ( t ) ( t T ) f ( t ) ∑ n − ∞ ∞ C n e i n Δ w t C n 1 T ∫ 0 T f ( t ) e − i n Δ w t d t 式1 f(t)(tT) \\ f(t) \sum_{n-\infty}^{\infty }C_ne^{i…

VS Code User和System版区别【推荐使用System版本】and VSCode+Keil协同开发之Keil Assistant

VS Code User和System版区别 Chapter1 VS Code User和System版区别1. 对于安装而言2. 结束语 Chapter2 VS Code 安装、配置教程及插件推荐插件&#xff1a; Chapter3 VSCodeKeil协同开发之Keil Assistant1. 效果展示2. Keil Assistant简介3. Keil Assistant功能特性4. 部署步骤…

Python----Python高级(网络编程:网络高级:多播和广播,C/S架构,TCP,UDP,网络编程)

一、多播和广播 1.1、多播 1.1.1、定义 多播&#xff08;Multicast&#xff09;也称为组播&#xff0c;是一种一对多的通信方式&#xff0c;将信息从单个源发送到 多个特定的接收者。这些接收者组成一个特定的多播组&#xff0c;只有加入该组的设备才会接 收和处理多播数据。…

网络工程师 (41)IP协议、IP地址表示方法

一、IP协议 IP协议&#xff0c;全称网际互连协议&#xff08;Internet Protocol&#xff09;&#xff0c;是TCP/IP体系中的网络层协议。 寻址&#xff1a;IP协议通过IP地址来唯一标识网络上的每一台设备&#xff0c;确保数据能够准确地发送到目标主机。路由选择&#xff1a;IP协…

Kubernetes控制平面组件:etcd高可用集群搭建

云原生学习路线导航页&#xff08;持续更新中&#xff09; kubernetes学习系列快捷链接 Kubernetes架构原则和对象设计&#xff08;一&#xff09;Kubernetes架构原则和对象设计&#xff08;二&#xff09;Kubernetes架构原则和对象设计&#xff08;三&#xff09;Kubernetes控…

Banana Pi OpenWRT One 官方路由器的第一印象

OpenWRT One是OpenWRT开源社区推出的首款官方开发板&#xff0c;与Banana Pi社区共同设计&#xff0c;由Banana Pi制造和发行。路由器采用蓝色铝合金外壳&#xff0c;质感极佳&#xff0c;视觉效果远超宣传图。整体设计简洁&#xff0c;呈长方形&#xff0c;虽然不是特别时尚&a…

【每日一题 | 2025】2.10 ~ 2.16

个人主页&#xff1a;Guiat 归属专栏&#xff1a;每日一题 文章目录 1. 【2.10】P8707 [蓝桥杯 2020 省 AB1] 走方格2. 【2.11】P8742 [蓝桥杯 2021 省 AB] 砝码称重3. 【2.12】P8786 [蓝桥杯 2022 省 B] 李白打酒加强版4. 【2.13】P8725 [蓝桥杯 2020 省 AB3] 画中漂流5. 【2.…

微信小程序配置3 配置sass

1. 在config。json文件里面的setting配置“sass” 2. 改你需要的页面后缀名为scss。 3.查看页面即可看到样式。

撕碎QT面具(1):Tab Widget转到某个Tab页

笔者未系统学过C语法&#xff0c;仅有Java基础&#xff0c;具体写法仿照于大模型以及其它博客。自我感觉&#xff0c;如果会一门对象语言&#xff0c;没必要先刻意学C&#xff0c;因为自己具有对象语言的基础&#xff0c;等需要用什么再学也不迟。毕竟不是专门学C去搞算法。 1…

恩智浦:将开发文档迁移到DITA/XML

摘要&#xff1a;本文是德国同行Parson公司写的一篇文章&#xff0c;描述芯片巨头恩智浦编写文档方法如何从MS Word和Adobe Frame Maker转向基于DITA的结构化写作和发布。英文原文地址&#xff1a;https://www.parson-europe.com/en/references/nxp - 1 - 项目目标 在开发产…

基于SpringBoot的医院药房管理系统【源码+答辩PPT++项目部署】高质量论文1-1.5W字

作者简介&#xff1a;✌CSDN新星计划导师、Java领域优质创作者、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流。✌ 主要内容&#xff1a;&#x1f31f;Java项目、Python项目、前端项目、PHP、ASP.NET、人工智能…