Solution 1 - Counting (Hash Map)
Count character frequencies in both strings and compare.
""" 0242.1 - Valid Anagram - Solution 1 - Counting (Hash Map) """
from collections import Counter
class Solution:
def isAnagram(self, s: str, t: str) -> bool:
return Counter(s) == Counter(t)
if __name__ == "__main__":
assert Solution().isAnagram("anagram", "nagaram")
assert not Solution().isAnagram("rat", "car")Solution 2 - Sorting
Sort both strings and compare the results.
""" 0242.2 - Valid Anagram - Solution 2 - Sorting """
class Solution:
def isAnagram(self, s: str, t: str) -> bool:
return sorted(s) == sorted(t)
if __name__ == "__main__":
assert Solution().isAnagram("anagram", "nagaram")