package main import ( "fmt" ) func main() { strs := []string{"eat", "tea", "tan", "ate", "nat", "bat"} anagrams := groupAnagrams(strs) fmt.Println(anagrams) } func groupAnagrams(strs []string) [][]string { hash := map[[26]int][]string{} for _, str := range strs { key := [26]int{} for i := range str { key[str[i]-'a']++ } // 字母异位词的字典序相同 hash[key] = append(hash[key], str) } ans := [][]string{} for _, v := range hash { ans = append(ans, v) } return ans }
Go实现字母异位词分组
于 2024-01-31 10:53:12 首次发布