萬物皆可循環(huán)
給定M個(gè)不重復(fù)字符串【a,b,c,d】,以及一個(gè)長度為n的字符串tbacabdata,問能否在這個(gè)字符串中找到一個(gè)長度為M的連續(xù)子串,使得這個(gè)子串的長度剛好剛好由上面M個(gè)字符組成,順序無所謂,返回任意滿足條件的一個(gè)子串的起始位置,未找到的返回-1,比如上面的例子為 abcd 3。
mins = "abcd"
longs = "123dbasaswaasd"
def getMinString(mins,longs):
pointerAt = 0
a = 0
while True:
for j in mins:
if j not in longs[pointerAt:pointerAt+len(mins)]:
break
else:
a+=1
continue
if a == len(mins):
return pointerAt
pointerAt += 1
a = 0
if pointerAt==len(longs)+1:
return -1
if __name__ == '__main__':
print(getMinString(mins, longs))