class solution(object):
def lengthoflongestsubstring(self, s):
""":type s: str
:rtype: int
"""occ = set()
n = len(s)
# 右指標,初始值為 -1,相當於我們在字串的左邊界的左側,還沒有開始移動
rk, ans = -1, 0
for i in range(0, n, 1):
if i != 0:
# 左指標向右移動一格,移除乙個字元
occ.remove(s[i - 1])
while rk + 1 < n and s[rk + 1] not in occ:
# 不斷地移動右指標
occ.add(s[rk + 1])
rk += 1
# print(occ)
# print(i, rk)
# 第 i 到 rk 個字元是乙個極長的無重複字元子串
ans = max(ans, rk - i + 1)
# print(occ)
return ans
leetcode 3 無重複的字串
給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。示例 1 輸入 abcabcbb 輸出 3 解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。示例 2 輸入 bbbbb 輸出 1 解釋 因為無重複字元的最長子串是 b 所以其長度為 1。示例 3 輸入 pwwkew 輸出 3 ...
leetcode 3 無重複字元的最長字元子串
堅持打卡!題目 給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。示例 1 輸入 abcabcbb 輸出 3 解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。示例 2 輸入 bbbbb 輸出 1 解釋 因為無重複字元的最長子串是 b 所以其長度為 1。示例 3 輸入 pwwk...
leetcode 3 最長無重複字串
3.longest substring without repeating characters 題面 given a string,find the length of the longest substring without repeating characters.給定字串,找到最長無重複字...