给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。
示例 1:
输入: s = "anagram", t = "nagaram"
输出: true
示例 2:
输入: s = "rat", t = "car"
输出: false
解法一:
class Solution:
def isAnagram(self, s, t):
s=list(s)
t=list(t)
s.sort()
t.sort()
return s==t
解法二:hash表,时间复杂度O(n)
class Solution:
def isAnagram(self, s, t):
if len(s)!=len(t):
return False
d = {}
for i in range(len(s)):
d[s[i]] = d[s[i]]+1 if d.get(s[i])!=None else 1
d[t[i]] = d[t[i]]-1 if d.get(t[i])!=None else -1
for key in d:
if d[key]!=0:
return False
return True