領釦每日一題--無重複字元的最長子串--Python實現
阿新 • • 發佈:2018-12-27
給定一個字串,請你找出其中不含有重複字元的 最長子串 的長度。
示例 1:
輸入: "abcabcbb"
輸出: 3
解釋: 因為無重複字元的最長子串是 "abc",所以其
長度為 3。
示例 2:
輸入: "bbbbb"
輸出: 1
解釋: 因為無重複字元的最長子串是 "b"
,所以其長度為 1。
示例 3:
輸入: "pwwkew" 輸出: 3 解釋: 因為無重複字元的最長子串是"wke"
,所以其長度為 3。 請注意,你的答案必須是 子串 的長度,"pwke"
是一個子序列,不是子串。
s='pwwkew' max_number = 0 number = 0 test = '' for i in s: #如果i不在test字串裡面,字串test新增這個字元,number+1 if i not in test: test += i number += 1 global s1 s1=test else: #i在test字串裡 if number >= max_number: max_number = number index = test.index(i) test = test[(index+1):] + i number=len(test) if number > max_number: max_number = number print(s1) print(max_number)