Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
_Fighter
Learngo
提交
eebfd979
L
Learngo
项目概览
_Fighter
/
Learngo
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
11
Wiki
分析
仓库
DevOps
项目成员
Pages
L
Learngo
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
11
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
eebfd979
编写于
12月 13, 2021
作者:
_Fighter
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
2021年12月10日
上级
5fd0977d
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
31 addition
and
0 deletion
+31
-0
nonrepeating.go
nonrepeating.go
+31
-0
未找到文件。
nonrepeating.go
0 → 100644
浏览文件 @
eebfd979
package
main
import
"fmt"
func
lengthOfNonRepeatingSubStr
(
s
string
)
int
{
lastOccurrend
:=
make
(
map
[
rune
]
int
)
start
:=
0
maxLength
:=
0
// for i ,ch := range[]byte(s){ byte 修改rune 支持中文件
for
i
,
ch
:=
range
[]
rune
(
s
)
{
if
lastI
,
ok
:=
lastOccurrend
[
ch
];
ok
&&
lastI
>=
start
{
start
=
lastOccurrend
[
ch
]
+
1
}
if
i
-
start
+
1
>
maxLength
{
maxLength
=
i
-
start
+
1
}
lastOccurrend
[
ch
]
=
i
}
for
v
,
_
:=
range
lastOccurrend
{
fmt
.
Printf
(
"(%c )"
,
v
)
}
fmt
.
Println
()
return
maxLength
}
func
main
()
{
fmt
.
Println
(
lengthOfNonRepeatingSubStr
(
"dafwefwefwfsdfsdf"
))
fmt
.
Println
(
lengthOfNonRepeatingSubStr
(
"我家你中国,我在家乡"
))
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录