我正努力以最有效的方式解决这个问题。在
找出给定的字串是否包含另一个较小字串的字元
我的方法是创建一个包含较小字符串(s2)和该字符串出现次数的哈希表/字典。 迭代给定的字符串(s1)并查看哈希表中是否找到所有字符。在
现在我的代码的运行时是O(3N)和O(N)额外的空间。我想知道有没有更好的方法来解决这个问题。在
def contains_anagram(s1, s2):
characters = {}
for i in s2:
if i in characters:
characters[i] += 1
else:
characters[i] = 1
for i in s1:
if i in characters:
characters[i] -= 1
else:
continue
for i in characters:
if characters[i] > 0:
return False
return True
如果你不关心实施细节
相关问题 更多 >
编程相关推荐