# 문제 설명
- 브루트 포스로 풀면 시간초과 -
O(1억)
- 각 인덱스마다 매번 부분문자열 길이를 계산함
- 부분 문자를 저장하는 배열 마련한 뒤
removeSubrange
를 활용하여 중복되지 않는 문자 리스트를 얻어오는 로직
class Solution {
func lengthOfLongestSubstring(_ s: String) -> Int {
var chars: [Character] = []
var maxValue = 0
for char in s {
if let index = chars.firstIndex(of: char) {
chars.removeSubrange(0...index)
}
chars.append(char)
maxValue = max(chars.count, maxValue)
}
return maxValue
}
}