題目:
給定乙個字串,找到最長子字串的長度,要求子字串中所有字元不重複。
example:
input: 「abcabcbb」
output: 3
explanation: 滿足條件的最長子字串為 「abc」, 長度為3.
思路:
令max=0,從頭遍歷字串,邊遍歷邊計數count,當遍歷到與前面存在相同字元處時,比較max與count,若count大於max,則令max等於count,否則max不變;隨後重新計數,繼續遍歷,重複前面操作,直到遍歷結束。最後輸出最長字串的長度max。
**:
def
maxl
(a):
#a為字串
b=[] count=
0#用於計數
max=
0#存放最大長度
for i in a:
#遍歷字串
if i not
in b:
#判斷元素i是否存在b中
count=count+
1else:if
maxmax=count
x=b.index(i)
if x==0:
b.remove(i)
#刪除值為i的字元
else
:del b[
0:x+1]
#刪除索引位置為0-x的字元
count=b.__len__()if
max< count:
max= count
print
(max
)if __name__==
'__main__'
: a=
input
('input:'
) maxl(a)
leetcode 最長子字串的長度
問題描述 給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。示例 1 輸入 abcabcbb 輸出 3 解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。示例 2 輸入 bbbbb 輸出 1 解釋 因為無重複字元的最長子串是 b 所以其長度為 1。我的解答 class solu...
最長子串的長度
最長子串 的長度 給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。示例 1 輸入 abcabcbb 輸出 3 解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。示例 2 輸入 bbbbb 輸出 1 解釋 因為無重複字元的最長子串是 b 所以其長度為 1。示例 3 輸入 pww...
字串中出現相同並且長度最長的子串
題目描述 在字串中找到出現相同的並且長度是最長的子串,輸出該子串以及其首字元的位置。例如mainstr yyabcdabjcabceg 輸出為 abc 和3。分析 每次都找到最大長度的子串,然後正序和逆序查詢該子串出現的位置。如果兩者位置不相等,則說明兩子串是相同的並且長度最長的子串,滿足條件。否則...