code: def longest_non_repeat_v1(string):
      
      if string is None:
          return 0
      dict = {}
      max_length = 0
      j = 0
      for i in range(len(string)):
          if string[i] in dict:
              j = max(dict[string[i]], j)
          dict[string[i]] = i + 1
          max_length = max(max_length, i - j + 1)
      return max_length
docs: Find the length of the longest substring
      without repeating characters.