3. Longest Substring Without Repeating Characters

Medium


Given a string s, find the length of the longest substring without repeating characters.

 

Example 1:

Input: s = "abcabcbb"
Output: 3
Explanation: The answer is "abc", with the length of 3.

Example 2:

Input: s = "bbbbb"
Output: 1
Explanation: The answer is "b", with the length of 1.

Example 3:

Input: s = "pwwkew"
Output: 3
Explanation: The answer is "wke", with the length of 3.
Notice that the answer must be a substring, "pwke" is a subsequence and not a substring.

 

Constraints:

  • 0 <= s.length <= 5 * 104
  • s consists of English letters, digits, symbols and spaces.




 class Solution:
    def lengthOfLongestSubstring(self, s: str) -> int:
        max_length = 0
        #hashset = set()
        wordlist = []

        for c in s:
            if c in wordlist:

                removed_char = wordlist.pop(0)
                #hashset.remove(removed_char)
                while(removed_char!=c):
                    removed_char = wordlist.pop(0)
                    #hashset.remove(removed_char)

                #hashset.add(c)
                wordlist.append(c)

            else:
                #hashset.add(c)
                wordlist.append(c)

                max_length = max(len(wordlist), max_length)

        return max_length

Random Note


  1. Effectively Using Django REST Framework Serializers
  2. How To Use DRF Serializers Effectively in Django
  3. My personal django rest framework serializer notes
  4. How to use DRF serializers effectively during write operations