2025/10/16
思路:异位词就是词频相等的。这些元素可以定义相等关系,问题转化为怎么把一个数组的元素分组。这应该是退化的排序算法?可以暴力统计。
评价:思路对,不过分组可以用哈希分组。
推荐思路:哈希分组,用字典,没有的话自动创建,可以每次 \(O(1)\) 查找键,值就是要存的组员(包括键自己)。
2025/10/19
def groupAnagrams(self, strs: List[str]) -> List[List[str]]: frequency_list = [] results = []
for s in strs:
frequency = defaultdict()
for char in s:
frequency[s] += 1
has_yiweici = false
for i, f in enumerate(frequency_list):
if identical(f, frequency):
frequency_dict.append(frequency)
has_yiweici = true
results[i].append(s)
if has_yiweici == False:
frequency_dict.append(frequency)
results.append([s])
return results