给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。
示例 1:
输入: s = "anagram", t = "nagaram"
输出: true
示例 2:
输入: s = "rat", t = "car"
输出: false
class Solution:
def isAnagram(self, s: str, t: str) -> bool:
return sorted(s) == sorted(t) #直接排序比较
思路:直接排序比较(如上图);建立hashmap,记录字母和出现次数(如下图)。
class Solution:
def isAnagram(self, s: str, t: str) -> bool:
dict1,dict2 = {},{}
for item in s:
dict1[item] = dict1.get(item, 0) + 1
for item in t:
dict2[item] = dict2.get(item, 0) + 1
return dict1 == dict2
python语法:字典的get()方法语法(以下参考博客园一大佬)
dict.get(key, default=None)
1. 先定义字典
>>>dict = {'A':1, 'B':2}
2. 当key值存在于dict.keys()中时,调用get()方法,返回的是对应的value值
>>>print(dict.get('A'))
返回为:
1
3. 当key值不存在于dict.keys()中时,调用get()方法,返回的是None
>>>print(dict.get('C'))
返回为:
None
4. 当default = x时,若key值存在于dict.keys()时,返回dict[key];若不存在于dict.keys()中时,返回x
>>>print(dict.get('A', 0))
>>>1
>>>print(dict.get('C', 0))
>>>0
注意:dict.get(key,0)可用于计数,并将键值保存在词典中。