Golang | Leetcode Golang题解之第3题无重复字符的最长子串

news2025/1/19 17:06:55

题目:

题解:

func lengthOfLongestSubstring(s string) int {
    // 哈希集合,记录每个字符是否出现过
    m := map[byte]int{}
    n := len(s)
    // 右指针,初始值为 -1,相当于我们在字符串的左边界的左侧,还没有开始移动
    rk, ans := -1, 0
    for i := 0; i < n; i++ {
        if i != 0 {
            // 左指针向右移动一格,移除一个字符
            delete(m, s[i-1])
        }
        for rk + 1 < n && m[s[rk+1]] == 0 {
            // 不断地移动右指针
            m[s[rk+1]]++
            rk++
        }
        // 第 i 到 rk 个字符是一个极长的无重复字符子串
        ans = max(ans, rk - i + 1)
    }
    return ans
}

func max(x, y int) int {
    if x < y {
        return y
    }
    return x
}

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

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

相关文章

Jenkins首次安装选择推荐插件时出现”No such plugin cloudbees-folder”解决方案

安装Jenkins成功之后&#xff0c;首次启动Jenkins后台管理&#xff0c;进入到安装插件的步骤&#xff0c;选择"推荐安装"&#xff0c;继续下一步的时候出现错误提示&#xff1a; 出现一个错误 安装过程中出现一个错误&#xff1a;No such plugin&#xff1a;cloudb…

C++ //练习 11.14 扩展你在11.2.1节练习(第378页)中编写的孩子姓到名的map,添加一个pair的vector,保存孩子的名和生日。

C Primer&#xff08;第5版&#xff09; 练习 11.14 练习 11.14 扩展你在11.2.1节练习&#xff08;第378页&#xff09;中编写的孩子姓到名的map&#xff0c;添加一个pair的vector&#xff0c;保存孩子的名和生日。 环境&#xff1a;Linux Ubuntu&#xff08;云服务器&#x…

Java中生成一个唯一的文件名的方法

使用java.util.UUID&#xff08;通用唯一识别码&#xff09;的randomUUID()方法&#xff1a; import java.util.UUID;public class Test {public static void main(String[] args) {for (int i 0; i < 100; i) {String fileName UUID.randomUUID().toString();System.out…

【JAVA】JAVA快速入门(长期维护)

下面是java的一些入门基础知识&#xff0c;有需要借鉴即可。 课程&#xff1a;B站黑马程序员&#xff0c;JAVA入门LINK 一、初识JAVA 1.java概述 概念&#xff1a;java是由sun公司研发&#xff0c;在2009年被oracle收购&#xff0c;祖师爷詹姆斯高斯林&#xff0c;是一种高级…

腾讯云轻量4核8G价格多少钱?4核8G12M轻量服务器646元一年3个月

2024年腾讯云4核8G服务器租用优惠价格&#xff1a;轻量应用服务器4核8G12M带宽646元15个月&#xff0c;CVM云服务器S5实例优惠价格1437.24元买一年送3个月&#xff0c;腾讯云4核8G服务器活动页面 txybk.com/go/txy 活动链接打开如下图&#xff1a; 腾讯云4核8G服务器优惠价格 轻…

51单片机入门之独立按键

目录 1.按键简介 2.独立按键控制LED亮灭 3.独立按键控制LED移位 1.按键简介 在生活中&#xff0c;我们常常会见到各种按键&#xff0c;我们的开发板上也有按键&#xff0c;就在左下角有四个按键&#xff0c;我们把它们叫做独立按键。 独立按键的原理比较简单&…

《捕鱼_ue4-5输出带技能的透明通道素材到AE步骤》

《捕鱼_ue4-5输出带技能的透明通道素材到AE步骤》 2022-05-17 11:06 先看下带透明的特效素材效果1、首先在项目设置里搜索alpha&#xff0c;在后期处理标签设置最后一项allow through tonemapper2、在插件管理器中&#xff0c;搜索movie render &#xff0c;加载movie render q…

基于单片机的数字万用表设计

**单片机设计介绍&#xff0c;基于单片机的数字万用表设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机的数字万用表设计概要是关于使用单片机技术来实现数字万用表功能的一种设计方案。下面将详细概述该设计的各个…

HTTPS传输过程

HTTPS&#xff1a;超文本传输安全协议 相较于HTTP明文传输&#xff0c;HTTPS增加了SSL/TLS进行了加密增加了通信的安全性。 SSL和TLS是两个不同的加密方法&#xff0c;SSL是TLS的前身&#xff0c;现在绝大多数浏览器使用的是TLS&#xff0c;所以着重了解以下TLS的概念即可。 首…

昇腾训练执行与推理部署系列 入门: 1.开启异腾AI之旅

一、1认识CANN 1、昇腾AI基础软硬件平台介绍2、CANN逻辑架构介绍 1、昇腾AI基础软硬件平台介绍 2、CANN逻辑架构介绍

工业项目中你连SCADA都没见过?

什么是SCADA SCADA是一种监控和数据采集系统&#xff0c;全称是Supervisor.Contro.an.Dat.Acquisition。SCADA系统在工业项目中具有广泛应用&#xff0c;包括生产线监控、工艺控制、设备维护、能源管理、安全监控和产量跟踪等多个场景。通过实时监测、数据采集和远程控制等功能…

Solana 线下活动回顾|多方创新实践,引领 Solana“文艺复兴”新浪潮

Solana 作为在过去一年里实现突破式飞跃的头部公链&#xff0c;究竟是如何与 Web3 行业共振&#xff0c;带来全新的技术发展与生态亮点的呢&#xff1f;在 3 月 24 日刚结束的「TinTin Destination Moon」活动现场&#xff0c;来自 Solana 生态的的专家大咖和 Web3 行业的资深人…

服创赛题| A03 井盖识别☞如何目标检测数据集Labelming(标注井盖broke,good...)

一、安装labelimg 打开cmd并输入以下命令 pip install labelimg -i https://pypi.tuna.tsinghua.edu.cn/simple 在cmd中输入labelimg labelimg二、labelimg 功能介绍 1. 在View中勾选Auto Save mode &#xff08;自动保存&#xff09; Display Labels&#xff08;在标框后…

LeetCode——动态规划(Java)

动态规划 简介[简单] 509. 斐波那契数[简单] 70. 爬楼梯[简单] 746. 使用最小花费爬楼梯[中等] 62. 不同路径[中等] 63. 不同路径 II[中等] 343. 整数拆分[中等] 96. 不同的二叉搜索树背包问题01背包[中等] 416. 分割等和子集[中等] 1049. 最后一块石头的重量 II[中等] 494. 目…

redis---哨兵模式Sentinel

上次搭建了一主两从的Redis集群&#xff0c;来实现了一定程度上的高可用。相比一个单节点的Redis来说已经有了很大的提升。 但是这个集群还是有一些问题的&#xff0c;主节点宕机了&#xff0c;我们还是需要手动去把另一台从节点提升为主节点&#xff0c;这样就不能实现真正的…

牛客·没有上司的舞会

题目描述 输入与输出 样例 输入 7 1 1 1 1 1 1 1 1 3 2 3 6 4 7 4 4 5 3 5 0 0 输出 5 题解 思路 dp[i][0] 代表i参加&#xff0c;dp[i][1]代表i不参加按树的dfs序计算最大值找到最大的老板状态转移&#xff1a; u&#xff1a;上司&#xff0c;v&#xff1a;员工 上司去&…

基于springboot的粮仓管理系统

文章目录 项目介绍主要功能截图&#xff1a;部分代码展示设计总结项目获取方式 &#x1f345; 作者主页&#xff1a;超级无敌暴龙战士塔塔开 &#x1f345; 简介&#xff1a;Java领域优质创作者&#x1f3c6;、 简历模板、学习资料、面试题库【关注我&#xff0c;都给你】 &…

腾讯云4核8g服务器承载量?4C8G能支持多少人?

腾讯云4核8G服务器多少钱&#xff1f;腾讯云4核8G轻量应用服务器12M带宽租用价格646元15个月&#xff0c;活动页面 txybk.com/go/txy 活动链接打开如下图所示&#xff1a; 腾讯云4核8G服务器优惠价格 这台4核8G服务器是轻量应用服务器&#xff0c;详细配置为&#xff1a;轻量4核…

spring boot后端controller中接收表单参数校验

校验分为两部分&#xff0c;一部分是前端的输入时就校验&#xff0c;一部分时后端接收参数时的校验。本文提到的是后端接收参数时的校验。这个后端校验的存在有什么意义呢&#xff1f; 比如我们设置前端在输入参数时限制输入不能为空&#xff0c;应该为3-20位非空字符&#xf…

AcWing 731. 毕业旅行问题(每日一题)

原题链接&#xff1a;731. 毕业旅行问题 - AcWing题库 此题难度较大&#xff0c;是2019年字节跳动校招题&#xff0c;里面涉及位运算与状态压缩DP&#xff0c;不会的可以去学习&#xff0c;此题根据个人量力而行。 建议看一下y总的讲解&#xff1a;AcWing 731. 毕业旅行问题&…