文章目录
  1. 1. Group Anagrams

Group Anagrams


我一开始的做法是n*n的方法,也就是对每个当前未分组的字符串构建其所用的字符映射,结果这样会超时,看了别人的解答后,可以对当前字符串进行一定的计算,将计算后的值作为hash的键。

创建一个大小为26的质数数组,{ 2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101 }。将字符串的字符在数组中所对应的质数进行相乘,得到一个新的hash键。因为质数的乘积还是质数,所以这样的乘积是唯一的。

这样只需要对字符串数组遍历一遍,每次计算当前字符串的质数hash。

文章目录
  1. 1. Group Anagrams