안녕하세요, HELLO
오늘은 Leetcode 알고리즘 문제 '3. Longest Substring Without Repeating Characters'에 대해서 살펴보고자 합니다.
알고리즘 문제, 코드, 해설 그리고 Leetcode에서 제공해준 solution 순서대로 정리하였습니다.
STEP 1. 'Longest Substring Without Repeating Characters' 알고리즘 문제
STEP 2. 'Longest Substring Without Repeating Characters' 코드(code)
STEP 3. 'Longest Substring Without Repeating Characters' 해설
STEP 1. 'Longest Substring Without Repeating Characters' 알고리즘 문제
Given a string s, find the length of the longest substring without repeating characters.
문자열이 지정되면 문자를 반복하지 않고 가장 긴 문자열을 구합니다.
Constraints:
- 0 <= s.length <= 5 * 104
- s consists of English letters, digits, symbols and spaces.
STEP 2. 'Longest Substring Without Repeating Characters' 코드(code)
■ Runtime: 56 ms, faster than 95.57% of Python3 online submissions for Longest Substring Without Repeating Characters.
■ Memory Usage: 14.2 MB, less than29.52%ofPython3online submissions forLongest Substring Without Repeating Characters.
class Solution:
def lengthOfLongestSubstring(self, s: str) -> int:
final = {}
temp = ""
count = 0
for i, value in enumerate(s):
if i != int(len(s)-1):
if value not in temp:
temp += value
count += 1
else:
final[temp] = count
if temp[0] == value:
temp = temp[1:] + value
count = len(temp)
elif temp[-1] == value:
temp = value
count = 1
else:
temp = temp[temp.find(value)+1:] + value
count = len(temp)
else:
if value not in temp:
temp += value
count += 1
final[temp] = count
else:
final[temp] = count
return max(final.values()) if len(final) != 0 else 0
STEP 3. 'Longest Substring Without Repeating Characters' 해설
코드를 작성하면서 참고한 영상 들을 공유드립니다.
URL: https://www.youtube.com/watch?v=wiGpQwVHdE0
URL: https://www.youtube.com/watch?v=3IETreEybaA
■ 마무리
오늘은 Leetcode 알고리즘 문제 '3. Longest Substring Without Repeating Characters'에 대해서 알아봤습니다.
좋아요와 댓글 부탁드리며,
오늘 하루도 즐거운 날 되시길 기도하겠습니다 :)
감사합니다.
'PROGRAMMING > LeetCode' 카테고리의 다른 글
[Leetcode] 5. Longest Palindromic Substring_해설, 풀이, 설명 (0) | 2022.04.02 |
---|---|
[Leetcode] 4. Median of Two Sorted Arrays_해설, 풀이, 설명 (0) | 2022.04.01 |
[Leetcode] 2. Add Two Numbers_해설, 풀이, 설명 (0) | 2022.03.28 |
[Leetcode] 1. Two sum_해설, 풀이, 설명 (0) | 2022.03.28 |
[Leetcode] 리트코드 활용법 및 공부법 (1) | 2022.03.26 |
댓글