code/leetcode/v1/longestsubstring
Longest Substring Without Repeating Characters
Given a string, find the length of the longest substring without repeating characters.
Example 1:
Input: “abcabcbb”
Output: 3
Explanation: The answer is “abc”, with the length of 3.
Example 2:
Input: “bbbbb”
Output: 1
Explanation: The answer is “b”, with the length of 1.
Example 3:
Input: “pwwkew”
Output: 3
Explanation: The answer is “wke”, with the length of 3.
Note that the answer must be a substring, “pwke” is a subsequence and not a substring.
Solution 1
1 | private static int lengthOfLongestSubstring(String s) { |
Using too much time, so I read the leetcode document.
Here is a SlideWindow method.
Solution 2
1 | private static int plus(String s) { |
We can adjust the SlideWindow by increase i
- head pointer and j
- rear pointer.
This can sharply optimize the complexity of time.
Reference
https://leetcode-cn.com/problems/longest-substring-without-repeating-characters