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 length 3
Example 2
Input: s = "bbbbb"
Output: 1
Explanation: The answer is "b" with length 1
Example 3
Input: s = "pwwkew"
Output: 3
Explanation: The answer is "wke" with length 3
Constraints:
0 <= s.length <= 5 * 10^4
s consists of English letters, digits, symbols and spaces.
Hint 1: Use a sliding window with a set to track characters in the current window.
Hint 2: When you see a duplicate, shrink the window from the left until the duplicate is removed.