☰
字母异位词分组-哈希表49-python
2026/10/30 1:15:07 网站建设 项目流程

数组也可以作为哈希表的键。

由于互为字母异位词的两个字符串包含的字母相同,因此两个字符串中的相同字母出现的次数一定是相同的,故可以将每个字母出现的次数使用数组存储,作为哈希表的键。

由于字符串只包含小写字母,因此对于每个字符串,可以使用长度为 26 的数组记录每个字母出现的次数。需要注意的是,数组是可变类型,不能直接作为哈希表的键,python中可以转为不可变类型的字符串或者tuple,就可以作为哈希表的键了。

fromcollectionsimportdefaultdictclassSolution(object):defgroupAnagrams(self,strs):""" :type strs: List[str] :rtype: List[List[str]] """alphabet_dict=defaultdict(list)forwordinstrs:alphabet_list=[0]*26forcinword:alphabet_list[ord(c)-ord("a")]+=1alphabet_tuple=tuple(alphabet_list)alphabet_dict[alphabet_tuple].append(word)returnalphabet_dict.values()

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询