我有两个序列aaaaaaaaaagagaag,AAAGAAG。 正确答案是AAGAAG。在
但我的密码是AA。在
也会有两个字符串的顺序是AAAGAAG,aaaaaaaaaagagaag。在
这是我的密码
`def longestSubstringFinder(string1, string2):
string1=string1.strip()
string2=string2.strip()
answer = ""
len1=len(string1)
len2=len(string2)
if int(len1)>1 and int(len2)>1:
for i in range(1,len1,1):
match = ""
for j in range(len2):
if len1>len2:
if i+j<len1 and (string1[i+j]==string2[i+j]):
match=str(match)+str(string2[i+j])
print(match)
else:
if len(match)>len(answer):
answer=match
match=""
elif len2>len1:
if i+j<len2 and (string1[i+j]==string2[i+j]):
match=str(match)+str(string2[i+j])
print(match)
else:
if len(match)>len(answer):
answer=match
match=""
return(answer)`
得到两个字符串的所有子字符串,找到这两组子字符串的交集,然后找到交集中最大的字符串
几周前,我偶然发现了Python中的
difflib
包,它非常适合这种工作。在以下是解决您问题的方法:
difflib文档says:
而且速度也很快!在
我已经计时了@AK47很好solution,它计时了{}
我的解决方案计时
10000 loops, best of 3: 31.6 µs per loop
相关问题 更多 >
编程相关推荐