LeetCode / Longest Substring Without Repeating Characters
Problem
- Link
- Description
- 중복되지 않는 문자로 구성된 최대 길이의 문자열 탐색
- Type
- Brute Force
- Sliding Window Pattern
Solution 1
| |
- Description
- Map을 만들고 문자열에 중복되는 문자가 존재하는지 확인하며 최대 길이의 문자열 탐색
- Map에 문자열이 존재하지 않으면, 해당 문자가 위차한 Index와 함께 Map에 저장
- Map에 문자열이 존재하면, 해당 문자가 존재한 Index부터 다시 탐색 시작
- Time Complexity
- O(len(s))
- Space Complexity
- O(len(s))
Solution 2
| |
- Description
- Sliding Window와 문자 마지막을 위치를 Map에 저장
- 중복된 문자가 나타난 경우
left_index를 이동시켜서 중복된 문자 제거 - 각 단계에서
right_index - left_index + 1값을 계산하여max_length와 비교하여 최대 길이 갱신
- Time Complexity
- O(len(s))
- Space Complexity
- O(len(s))