[LeetCode]049-Group Anagrams
2016-05-07 16:40
453 查看
题目:
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:
Solution:
可以使用map数据结构存储,map
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.
Solution:
可以使用map数据结构存储,map
class Solution { public: vector<vector<string>> groupAnagrams(vector<string>& strs) { map<string,int> search_map; vector<vector<string>> ret; sort(strs.begin(),strs.end()); for(int i = 0; i < strs.size();i++) { string temp = strs[i]; sort(temp.begin(),temp.end()); //sort temp if(search_map.find(temp) == search_map.end()) { //can't find vector<string> s; s.push_back(strs[i]); ret.push_back(s); int index = ret.size()-1; search_map.insert(pair<string,int>(temp,index)); } else { int index = search_map[temp]; ret[index].push_back(strs[i]); } } return ret; } };
相关文章推荐
- leetcode 179 Largest Number
- leetcode 24 Swap Nodes in Pairs
- leetcode 2 Add Two Numbers 方法1
- leetcode 2 Add Two Numbers 方法2
- leetcode----Longest Substring Without Repeating Characters
- [LeetCode]47 Permutations II
- [LeetCode]65 Valid Number
- [LeetCode]123 Best Time to Buy and Sell Stock III
- [LeetCode] String Reorder Distance Apart
- [LeetCode] Sliding Window Maximum
- [LeetCode] Find the k-th Smallest Element in the Union of Two Sorted Arrays
- [LeetCode] Determine If Two Rectangles Overlap
- [LeetCode] A Distance Maximizing Problem
- leetcode_linearList
- leetcode_linearList02
- 021-Merge Two Sorted Lists(合并两个排好序的单链表);leetcode
- LeetCode[Day 1] Two Sum 题解
- LeetCode[Day 2] Median of Two Sorted Arrays 题解
- LeetCode[Day 3] Longest Substring Without... 题解
- LeetCode [Day 4] Add Two Numbers 题解