Explore diverse LeetCode solutions in Python, C++, JavaScript, SQL, and TypeScript. Ideal for interview prep, learning, and code practice in multiple programming languages. Github Repo Link
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.
Python
# time complexity: O(n)
# space complexity: O(min(m,n))
from collections import Counter
class Solution:
def lengthOfLongestSubstring(self, s: str) -> int:
chars = Counter()
left = right = 0
res = 0
while right < len(s):
r = s[right]
chars[r] += 1
while chars[r] > 1:
l = s[left]
chars[l] -= 1
left += 1
res = max(res, right - left + 1)
right += 1
return res
Input = "abcabcbb"
print(Solution().lengthOfLongestSubstring(Input))