赞
踩
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
示例 1:
输入: s = “anagram”, t = “nagaram”
输出: true
示例 2:
输入: s = “rat”, t = “car”
输出: false
说明:
你可以假设字符串只包含小写字母。
#最直观的思路
可以创建一个字典用来存放每个字母出现的次数
字典的key即为字符串中的字母
当遍历字符串s时,如果该字母已经为字典中的key
则只需要将其对应的value值+1即可
若不存在字典的key中则直接新建一个key,并将其value置为1
反之遍历字符串t时,每遇到一个字母,则将其对应的value-1
若遍历到不存在字典中的字母时,则直接返回False
当全部遍历完后,重新检查字典中的所有value值是否为0
若全部为0,则返回True
反之返回False
class Solution: def isAnagram(self, s: str, t: str) -> bool: if len(s) != len(t): return False val = {} for i in s: if i in val: val[i] += 1 else: val[i] = 1 for i in t: if i in val: val[i] -= 1 else: return False for i in val.values(): if i != 0: return False return True
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。