最长不重复的字符串

  1. func lengthOfLongestSubstring(s string) int {
  2. m := make(map[uint8]int)
  3. max, left, right, length := 0, 0, 0, len(s)
  4. for right < length {
  5. m[s[right]]++
  6. for m[s[right]] != 1 {
  7. m[s[left]]--
  8. left++
  9. }
  10. if max < right-left+1 {
  11. max = right - left + 1
  12. }
  13. right++
  14. }
  15. return max
  16. }