leetcode 49:Group Anagrams
2015-11-10 22:40
302 查看
题目:
Given an array of strings, group anagrams together.
For example, given:
Return:
Note:
For the return value, each inner list's elements must follow the lexicographic order.
All inputs will be in lower-case.
思路:
可以先对字符串进行排序,然后插入到对应的hash表里面,hash表应该是下面的形式:
实现如下:
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:
For the return value, each inner list's elements must follow the lexicographic order.
All inputs will be in lower-case.
思路:
可以先对字符串进行排序,然后插入到对应的hash表里面,hash表应该是下面的形式:
unordered_map<string, vector<string>> hash;
实现如下:
class Solution { public: vector<vector<string>> groupAnagrams(vector<string>& strs) { unordered_map<string, vector<string>> hash; int i = 0; for (auto s : strs) { sort(s.begin(), s.end()); hash[s].push_back(strs[i++]); } vector<vector<string>> res; for (auto n : hash){ sort(n.second.begin(), n.second.end()); res.push_back(n.second); } return res; } };
相关文章推荐
- 进击的KFC:UI(一)UIView及其子类
- python学习笔记(1)
- longestSubstring
- HDU 4739 Zhuge Liang's Mines(DP)
- /etc/fstab 只读无法修改的解决办法
- Android Studio 简单设置
- 高斯混合模型EM算法
- 4个Linux服务器监控工具
- Shiro使用和源码分析---6
- Java Spring的IoC和AOP的知识点速记
- JavaScript笔记二
- Java objectOutputStream的用法
- [kuangbin带你飞]专题一 简单搜索M - 非常可乐(HDU 1495)
- 【线性代数公开课MIT Linear Algebra】 第十九课 行列式的公式
- screenX,clientX,pageX,offsetX,pageXoffset的区别
- 解决Visual Studio 2015创建工程时的“DNX SDK version 'dnx-clr-win-x86.1.0.0-beta5' failed to install.”错误
- 写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和
- 三元组Triplet的Java实现(数据结构 例1-6)
- 高效敏捷的Java爬虫框架SeimiCrawler示例
- GTK+2.0编程范例代码分析-第二章(1)