class Solution {
var dic: [Character: Int] = [:]
var length = 0
var maxLength = 0
func lengthOfLongestSubstring(_ s: String) -> Int {
var st = 0
var dt = 0
for (dt, dtChar) in s.enumerated() {
if let prevIndex = dic[dtChar], st <= prevIndex {
st = prevIndex + 1
}
dic[dtChar] = dt
var len: Int = dt - st + 1
if len > 0 {
maxLength = maxLength < len ? len : maxLength
}
}
//print("\(dic)")
return maxLength
}
}
'알고리즘 문제 풀기' 카테고리의 다른 글
<릿코드> 6. ZigZag Conversion (0) | 2020.12.24 |
---|---|
<릿코드> 5. Longest Palindromic Substring (0) | 2020.12.18 |
<프로그래머스> [카카오 인턴 2020] 수식 최대화 (0) | 2020.09.19 |
<스위프트&알고리즘> 10818번 최소, 최대 (0) | 2020.04.16 |
<스위프트&알고리즘> 못풀음, 동전2 2294번 (0) | 2020.04.16 |