leetcode每日兩題 Day1 簡單題2

2022-06-29 07:00:15 字數 836 閱讀 1878

3. 無重複字元的最長子串

給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。

示例 1:

輸入: "abcabcbb"

輸出: 3

解釋: 因為無重複字元的最長子串是 "abc",所以其長度為 3。

示例 2:

輸入: "bbbbb"

輸出: 1

解釋: 因為無重複字元的最長子串是 "b",所以其長度為 1。

示例 3:

輸入: "pwwkew"

輸出: 3

解釋: 因為無重複字元的最長子串是 "wke",所以其長度為 3。

請注意,你的答案必須是 子串 的長度,"pwke" 是乙個子串行,不是子串。

class

solution:

def lengthoflongestsubstring(self, s: str) ->int:

res =0

mark = set() #

用集合標明是否有出現重複字母

r = 0 #

右指標for i in

range(len(s)):

if i !=0:

mark.remove(s[i - 1])

while r < len(s) and s[r] not

in mark: #

如果不滿足條件說明r走到了s的盡頭或r指向的元素

mark.add(s[r]) #

將當前r指向的字母加入集合

r += 1res = max(res, r - i) #

在每乙個位置更新最大值

return res

LeetCode每日兩題 day3

leetcode8.字串轉換整數 leetcode7.整數反轉 題目詳情 給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。示例 1 輸入 123 輸出 321 示例 2 輸入 123 輸出 321 示例 3 輸入 120 輸出 21 實現flag 1if x 0else 1 ...

LeetCode每日兩題 day4

leetcode11.盛水最多的容器 leetcode9.回文數 問題詳情 判斷乙個整數是否是回文數。回文數是指正序 從左向右 和倒序 從右向左 讀都是一樣的整數。實現class solution object defispalindrome self,x type x int rtype bool...

4 26 刷題Day 1 樹形dp兩題

include include include include using namespace std int n int head 6005 next 6005 last 6005 int root int f 5 6005 void dp int x int main for int i 1 i...