给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。
例如,
s = "anagram",t = "nagaram",返回 true
s = "rat",t = "car",返回 false
注意:
假定字符串只包含小写字母。
提升难度:
输入的字符串包含 unicode 字符怎么办?你能能否调整你的解法来适应这种情况?
class Solution(object):
def isAnagram(self, s, t):
"""
:type s: str
:type t: str
:rtype: bool
"""
lens = len(s)
lent = len(t)
if lens != lent:
return False
flag = {}
for p in s:
if p in flag:
flag[p] += 1
else:
flag[p] = 1
print flag
for p in t:
if p not in flag:
return False
elif flag[p] == 0:
return False
flag[p] -= 1
return True