QA:无重复字符的最长子串
2024-08-28 09:27:14
无重复字符的最长字串
leetcode地址:https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/
题目描述:
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。
示例:
输入: "abcabcbb"
输出: 3
解决思路:
使用map lastOccured[byte]int 记录字符和字符最后出现的下标
对于字符串每个字符x:
1.lastOccured[x]不存在 或者 小于start时不做操作。
2.lastOccured[x]>=start 时,start = lastOccured[x]+1。
3.每次都要更新lastOccured[x],更新最大长度maxLength。
代码如下:
func lengthOfLongestSubstring(s string) int {
lastOccured := make(map[byte]int)
start :=
maxLength :=
for i, ch := range []byte(s){
if num, ok := lastOccured[ch]; ok&& num >= start{
start = num +
}
if i-start+ > maxLength{
maxLength = i-start+
}
lastOccured[ch] = i
}
return maxLength
}
最新文章
- PHP 代理模式
- ";递归";实现";约瑟夫环";,";汉诺塔";
- QQWry.dat 数据写入
- Tomcat基础教程(四)
- Java中实现对象的比较:Comparable接口和Comparator接口
- win7 打开方式不能添加程序
- 如何使用css、布局横向导航栏
- Android -------- 从一个Fragment跳转到另一个Fragment
- 【百度地图API】如何批量转换为百度经纬度
- Python模块的动态加载机制
- Redis集群之配置文件详解(待完善)
- SpriteBuilder中的CCSprite9Slice是个什么鬼?
- RHEL6非交互式工具sshpass和expect安装
- python -- 判断给定的参数是否是地理位置的经度和纬度
- win10下快捷命令
- POJ 2663 Tri Tiling 矩阵快速幂 难度:3
- 获取本地内网和外网IP地址
- 微信小程序实现文字跑马灯
- hdu 2147 kiki&;#39;s game, 入门基础博弈
- WAS部署 -- SRVE0255E: 尚未定义要处理 /snoop 的 Web 组/虚拟主机
热门文章
- SpringBoot 连接kafka ssl 报 CertificateException: No subject alternative names present 异常解决
- Java匹马行天下之教你用学汉语式方法学编程语言
- iOS渠道分包2种模式之包内注入文件分包
- mydumper 介绍及使用
- jdbc 以及 事务的java类编写
- 02-15 Logistic回归(鸢尾花分类)
- 【NOIP模拟赛】小奇的矩阵
- Redis 复制过程详解
- [JZOJ5455]【NOIP2017提高A组冲刺11.6】拆网线
- Vulnhub靶场渗透练习(一) Breach1.0