package main
import "fmt"
func main () {
stringa := "aabccd"
result := findSubSring(stringa)
fmt.Println("result: ", result)
}
// findSubSring找子串
func findSubSring(s string) int {
// index 初始化一个值
index := -1
n := len(s)
result := 0
temp := make(map[byte]int)
for i, _ := range s {
for index+1 < n && temp[s[index+1]] == 0 {
temp[s[index+1]]++
index++
}
// 比较
result = max(result, index-i+1)
// 判断越界
if _, ok := temp[s[index]]; ok {
delete(temp, s[i])
}
}
return result
}
// max 比较
func max(a, b int) int{
if a > b {
return a
}
return b
}