leetcode

3. Longest Substring Without Rep

2019-03-22  本文已影响0人  AnakinSun

滑动窗口,如果在hash表里找到了当前的字符,重新设置窗口的起点位置

func lengthOfLongestSubstring(s string) int {
    m := make(map[rune]int)
    start, max := -1, 0

    for k, v := range s {
        if last, ok := m[v]; ok && last > start { //如果发现重复字符
            start = last
        }
        m[v] = k
        if k-start > max { //保存最大值
            max = k - start
        }
    }
    return max
}
上一篇下一篇

猜你喜欢

热点阅读