49. Group Anagrams

难度等级:中等

Given an array of strings, group anagrams together.

For example, given: ["eat", "tea", "tan", "ate", "nat", "bat"],

Return:

[

["ate", "eat","tea"],

["nat","tan"],

["bat"]

]

返回的每行都是可以anagrams ,并且按照字典排序的。每行的单词都是排好序的。


代码:


49. Group Anagrams_第1张图片
参考代码


解题思路:把所有满足anagrams的字符串放到一个map的multiset里;然后遍历map里的每个multiset取出所有的字符串赋值给vector。在这里注意的是multiset自动将里边的字符串排好序了。

原题地址


知识拓展


Given an array of strings, return all groups of strings that are anagrams.

Note: All inputs will be in lower-case.

从一个数组里挑出符合angrams字符串的群组。


代码:


49. Group Anagrams_第2张图片
拓展代码

思路:排序字符串,映射到map里,然后赋值给ret。vector 大于 1 的时候,才能说明是找到两个以上的字符串了,否则不符合条件,if起到筛选的作用。


引用自博客:博客园

你可能感兴趣的:(49. Group Anagrams)