欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

Leetcode242.有效的字母异位词ValidAnagram

时间:2023-04-23

class Solution: def isAnagram(self, s: str, t: str) -> bool: record = [0] *26 for i in s:# 用哈希法( 哈希函数:ord(i)-ord('a') )将'a'映射为0 'b'映射为1..'z'映射为25 其它字母同理 record[ord(i)-ord('a')] += 1 #此处不用记住ASCII 用ord()计算即可 for i in t: record[ord(i)-ord('a')] -= 1 for i in range(len(record)): if record[i] != 0: #若record有一个字母(元素)不为0 则不是Anagram return False return True

注:此题也可用defaultdict来做

class Solution: def isAnagram(self, s: str, t: str) -> bool: from collections import defaultdict s_dict = defaultdict(int) t_dict = defaultdict(int) for x in s: s_dict[x] += 1 for x in t: t_dict[x] += 1 return s_dict == t_dict

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。