Find All Anagrams in a String LeetCode solution in Python
1from collections import Counter234class Solution:5def findAnagrams(self, s: str, p: str) -> List[int]:6l = "abcdefghijklmnopqrstuvwxyz"7if len(p) > len(s):8return []9d = {}10for x in l:11d[x] = 012d1 = dict(d)13d2 = dict(d)14for x in range(len(p)):15d1[s[x]] += 116d2[p[x]] += 117l1 = []18if d1 == d2:19l1 = [0]20# print(d1)21for x in range(len(p), len(s)):22d1[s[x]] += 123d1[s[x - len(p)]] -= 124if d1 == d2:25l1.append(x - len(p) + 1)26return l1