|
发表于 2017-11-24 15:02:42
|
显示全部楼层
本帖最后由 brankwong 于 2017-11-24 15:10 编辑
# check the longest string in which every letter has no repeat.
def longest_substring(string):
s=string
length=len(s)
s_head,s_len,max_s_head,max_s_len=0,1,0,1
for i in range(1,length):
if s[i] in s[s_head:i]:
index=s[s_head:i].index(s[i])
if s_len>max_s_len:
max_s_head=s_head
max_s_len=s_len
s_head=s_head+index+1
s_len=s_len-index
else:
s_len+=1
if s_len>max_s_len:
max_s_head=s_head
max_s_len=s_len
result=s[max_s_head:max_s_head+max_s_len]
return result |
|