leetCode 49 Group Anagrams
1. 题目内容
anagrams:在不考虑顺序的情况下,包含相同字母的字符串组成anagrams。所以相当于字母的归类。
2.算法思路
首先,需要将所有的字母进行排序,然后将得到的字符串值进行键值对的匹配,当字母排序之后存在相同的键时,即直接将原有的字符串push到栈中,后将得到的值进行排序后得到最终结果
3.代码
var groupAnagrams = function(strs) {
var hash = {};
var getKey = function(str) {
return str.split('').sort().join('');
};
for (var i = 0, len = strs.length; i < len; ++i) {
var key = getKey(strs[i]);
hash[key] = hash[key] || [];
hash[key].push(strs[i]);
}
var results = [];
for (var key in hash) {
results.push(hash[key].sort());
}
return results;
};