LeetCode-algorithms 49. Group Anagrams
来源:互联网 发布:3dcg制作软件 编辑:程序博客网 时间:2024/05/23 01:12
题目:
Given an array of strings, group anagrams together.
For example, given: ["eat", "tea", "tan", "ate", "nat", "bat"]
,
Return:
[ ["ate", "eat","tea"], ["nat","tan"], ["bat"]]
Note: All inputs will be in lower-case.
思考:
这道题很明显是使用哈希表去进行运算,最后我自己所想到的方法还是最简单的那种,就是按照每个string先排好序,然后把排序后的string作为他的key去存储原来的string内容。这种方法是最简单的一种,我本来希望用一个把字母转成数字,再通过一个哈希函数去对应一个特定的数字,但是最后我并没有想到如何去做。solution里面其中一个答案,他是使用素数去做的,我觉得很有参考意义。但是下面还是贴上自己的代码。
代码:
class Solution {public:vector<vector<string>> groupAnagrams(vector<string>& strs) {vector<vector<string>> result;if (strs.size() == 0) return result;map<string, vector<string>> hash;string temp_s;for (string s : strs){temp_s = s;sort(temp_s.begin(), temp_s.end());hash[temp_s].push_back(s);}for (map<string, vector<string>>::iterator iter = hash.begin(); iter != hash.end(); iter++){result.push_back(iter->second);}return result;}};
结果:
阅读全文
0 0
- LeetCode-algorithms 49. Group Anagrams
- Algorithms—49.Group Anagrams
- [leetcode] 49.Group Anagrams
- LeetCode 49. Group Anagrams
- [LeetCode]49. Group Anagrams
- leetcode 49. Group Anagrams
- 49. Group Anagrams LeetCode
- Leetcode 49. Group Anagrams
- LeetCode 49. Group Anagrams
- LeetCode 49. Group Anagrams
- [leetcode] 49. Group Anagrams
- LeetCode 49. Group Anagrams
- LeetCode-49.Group Anagrams
- [Leetcode] 49. Group Anagrams
- LeetCode - 49. Group Anagrams
- [LeetCode] 49. Group Anagrams
- leetcode 49. Group Anagrams
- [leetcode] 49. Group Anagrams
- CI框架表单验证
- Quartz使用总结
- Mybatis 向指定表中批量插入数据
- NetworkClient分析
- 使用wireshark常用的过滤命令
- LeetCode-algorithms 49. Group Anagrams
- MYSQL中利用select查询某字段中包含以逗号分隔的字符串的记录方法
- omp计算时间(高精度)
- VLAN介绍
- 华为或者荣耀手机用Android Studio 不能输出logcat问题
- AirMan建设的经验
- MYSQL查询实例
- JDBC简介
- 处理ipv6和内购(IAP)及掉单问题的正确姿势