20241108,LeetCode 每日一题,用 Go 计算字符串中最长无重复字符

题目

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

输入: s = “abcabcbb”
输出: 3
解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。

示例 2:

输入: s = “bbbbb”
输出: 1
解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。

示例 3:

输入: s = “pwwkew”
输出: 3
解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。
请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不是子串。

思路

使用滑动窗口算法,遍历字符串。

代码

func lengthOfLongestSubstring(s string) int {charMap := make(map[rune]int)start, maxlen := 0, 0for i, char := range s {if idx, ok := charMap[char]; ok && idx >= start {start = idx + 1}charMap[char] = imaxlen = max(maxlen, i-start+1)}return maxlen
}func max(a, b int) int {if a > b {return a}return b
}

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

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

相关文章

「Mac畅玩鸿蒙与硬件32」UI互动应用篇9 - 番茄钟倒计时应用

本篇将带你实现一个番茄钟倒计时应用,用户可以设置专注时间和休息时间的时长,点击“开始专注”或“开始休息”按钮启动计时,应用会在倒计时结束时进行提醒。番茄钟应用对于管理时间、提升工作效率非常有帮助,并且还会加入猫咪图片…

Qt/C++ 海康SDK开发示例Demo

*** 工业相机在机器视觉中起到关键作用,本文基于海康 SDK 详细解读了设备连接与控制的各个步骤。内容涵盖设备枚举、句柄创建、图像采集回调以及设备异常处理,帮助开发者快速理解如何通过代码控制相机,实时采集并处理图像数据。*** 1. 搜索并…

探索 Python 的新边疆:sh 库的革命性功能

文章目录 **探索 Python 的新边疆:sh 库的革命性功能**第一部分:背景介绍第二部分:sh 库是什么?第三部分:如何安装 sh 库?第四部分:简单库函数使用方法1. 执行 ls 命令2. 使用 grep 搜索文件内容…

深度学习——前向传播与反向传播、神经网络(前馈神经网络与反馈神经网络)、常见算法概要汇总

文章目录 🌺深度学习面试八股汇总🌺前向传播与反向传播前向传播(Forward Propagation)反向传播(Back Propagation)总结 神经网络简介结构类型前馈神经网络(Feedforward Neural Network, FFNN&am…

MySQL 中的索引下推功能

看到索引,应该大家都可以联想到这个是和查询效率有关系的,既然有这个功能,那么那句古话说的好啊:存在即合理。那么这个就是说有了这个功能,可以提升查询效率。 什么是索引下推 我们先有一个大概的理解:在…

#渗透测试#SRC漏洞挖掘# 操作系统-Linux系统之基本命令、资源耗尽脚本编写

免责声明 本教程仅为合法的教学目的而准备,严禁用于任何形式的违法犯罪活动及其他商业行为,在使用本教程前,您应确保该行为符合当地的法律法规,继续阅读即表示您需自行承担所有操作的后果,如有异议,请立即停…

软考中级 软件设计师 上午考试内容笔记(个人向)Part.1

软考上午考试内容 1. 计算机系统 计算机硬件通过高/低电平来模拟1/0信息;【p进制】: K n K n − 1 . . . K 2 K 1 K 0 K − 1 K − 2... K − m K n r n . . . K 1 r 1 K 0 r 0 K − 1 r − 1 . . . K − m r − m K_nK_{n-1}...K_2K_1K_0K…

IDA*算法 Power Calculus————poj 3134

目录 闲聊 前言 DFS算法的无效搜索 BFS算法的空间浪费 IDDFS A*算法 IDA* Power Calculus 问题描述 输入 输出 问题分析 代码 闲聊 前几周在忙着数学竞赛,所以就没时间更新,高等数学,一生之敌,真不知道报名的时候我是怎么想…

基于python深度学习技术矩阵分解的推荐系统,通过学习隐含特征,实现推荐

实现了一个基于矩阵分解的推荐系统,用于预测用户对电影的评分。具体来说,该程序通过TensorFlow构建和训练一个模型,来学习用户和电影之间的隐含特征,并根据这些特征预测评分。以下是代码的主要功能和步骤的详细描述: …

C++高级编程(8)

八、标准IO库 1.输入输出流类 1)非格式化输入输出 2)put #include <iostream> #include <string> ​ using namespace std; int main() {string str "123456789";for (int i str.length() - 1; i > 0; i--) {cout.put(str[i]); //从最后一个字符开…

EMC Plus:大电流注入传导抗扰度

大电流注入 &#xff08;BCI&#xff09; 是一种传导射频抗扰度测试&#xff0c;利用电流注入探头将调制信号引入电缆。其目的是复制设备运行环境中预期的电磁干扰 &#xff08;EMI&#xff09; 条件。在这里&#xff0c;我将为您提供一个使用 Ansys EMC Plus 进行大电流注入传…

《Java核心技术 卷I》JFrame组件中显示信息

组件中显示信息 JFrame结构复杂&#xff0c;由四层窗格&#xff0c;其中根窗格、层级窗格和玻璃窗格人们并不太关心&#xff0c;他们要用来组织菜单栏和内容窗格以及实现观感&#xff0c;Swing程序员最关心的是内容窗格(content pane)&#xff0c;添加到窗体的所有组件都会自动…

0x00基础算法 -- 0x01 位运算

资料来源&#xff1a;算法竞赛进阶指南活动 - AcWing 1、进制表示 二进制表示&#xff1a;m位二进制中&#xff0c;通常称最低位为第0位&#xff0c;从右到左以此类推&#xff0c;最高位为第m-1位。 常用十六进制表示的数字&#xff1a; 32位补码int&#xff08;十进制&#xf…

算法求解(C#)-- 寻找包含目标字符串的最短子串算法

1. 引言 在字符串处理中&#xff0c;我们经常需要从一个较长的字符串中找到包含特定目标字符串的最短子串。这个问题在文本搜索、基因序列分析等领域有着广泛的应用。本文将介绍一种高效的算法来解决这个问题。 2. 问题描述 给定一个源字符串 source 和一个目标字符串 targe…

Linux之Chronyd 时间服务器配置(Chronod Time Server Configuration in Linux)

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 本人主要分享计算机核心技…

【Ant Design Pro】如何实现组件的状态保存umi-plugin-keep-alive插件的使用

都知道vuejs里面帮我们实现了一个内置的keep-alive组件&#xff0c;给我们缓存一些组件的状态带来了很大的便利。但是在react中没有自带的实现&#xff0c;可以借助社区的插件umi-plugin-keep-alive来实现这个功能。 实现效果对比 未使用插件&#xff0c;可以看到我们在页面跳…

【数据结构】二叉排序树和平衡二叉树

目录 1. 二叉搜索树&#xff08;BST&#xff09; 1.1 二叉搜索树的定义及特点 1.1.1 定义 1.1.2 特点 1.2 二叉排序树的构造&#xff08;创建&#xff09; 1.2.1 基本思想 1.2.2 算法 1.3 二叉排序树的删除 2. 平衡二叉树&#xff08;AVL&#xff09; 2.1 为什么要用…

C++四种类型转换

C语言提供了四种类型转换 const_cast: 可以去除掉常量属性的类型转换 //const_cast const int a 10; double* p1 (double*)&a;//类型和原来的类型可以不一致&#xff0c;但是不安全 int* p2 const_cast<int*>(&a);//类型和原本的类型必须匹配 //<>中必…

【SPIE出版,往届稳定EI检索】2024智能视觉与数据建模国际学术会议(ICIVD 2024,12月13-15日)

2024智能视觉与数据建模国际学术会议 2024 International Conference on Intelligent Vision and Data modeling (ICIVD 2024) 重要信息 会议官网&#xff1a;www.iccaid.net 2024 International Conference on Intelligent Vision and Data modeling (ICIVD 2024)www.iccaid…

大模型的思维链提示

文章目录 思维链提示的基本形式思维链提示的优化策略关于思维链的进一步讨论思维链提示是一种高级提示策略,旨在增强大语言模型在各类复杂推理任务上的表现。常见的推理任务包括算术推理、常识推理以及符号推理等多种任务。与上下文学习方法仅使用⟨输入,输出⟩二元组来构造提…