topic
Return the starting position of the same-letter word in s for s and p.
s: “cbaebabacd” p: “abc”
Output:[0, 6]
Ideas
Sliding window
Code
def areAnagram(str1, str2):
if len(str1) != len(str2):
return False
return sorted(str1) == sorted(str2)
def findAnagrams(s,p):
length = len(p)
list1 = []
for i in range(len(s)-length):
if areAnagram(p,s[i:length+i]) is True:
list1.append(i)
return list1
s = "cbaebabacd"
p = "abc"
a = findAnagrams(s, p)
print(a)