Here, We see Group Anagrams problem Solution. This Leetcode problem is done in many programming languages like C++, Java, JavaScript, Python, etc., with different approaches.

Group Anagrams LeetCode Solution
Problem Statement ->
Given an array of strings strs, group the anagrams together. You can return the answer in any order.
An Anagram is a word or phrase formed by rearranging the letters of a different word or phrase, typically using all the original letters exactly once.
Example 1: Input: strs = ["eat","tea","tan","ate","nat","bat"] Output: [["bat"],["nat","tan"],["ate","eat","tea"]]
Example 2: Input: strs = [""] Output: [[""]] Example 3: Input: strs = ["a"] Output: [["a"]]
Group Anagrams Leetcode Solution C++ ->
class Solution {
public:
vector<vector<string>> groupAnagrams(vector<string>& strs) {
unordered_map<string, vector<string>> mp;
for (string s : strs) {
string t = s;
sort(t.begin(), t.end());
mp[t].push_back(s);
}
vector<vector<string>> anagrams;
for (auto p : mp) {
anagrams.push_back(p.second);
}
return anagrams;
}
};
Code language: C++ (cpp)
Group Anagrams Leetcode Solution Java ->
class Solution {
public List<List<String>> groupAnagrams(String[] strs) {
HashMap<String,List<String>> map=new HashMap<>();
for(int i=0;i<strs.length;i++){
String s1=strs[i];
char[] arr=s1.toCharArray();
Arrays.sort(arr);
String str=new String(arr);
if(map.containsKey(str)){
map.get(str).add(s1);
}else{
map.put(str,new ArrayList<>());
map.get(str).add(s1);
}
}
return new ArrayList<>(map.values());
}
}
Code language: Java (java)
Group Anagrams Leetcode Solution JavaScript ->
var groupAnagrams = function(strs) {
let res = {};
for (let str of strs) {
let count = new Array(26).fill(0);
for (let char of str) count[char.charCodeAt()-97]++;
let key = count.join("#");
res[key] ? res[key].push(str) : res[key] = [str];
}
return Object.values(res);
};
Code language: JavaScript (javascript)
Group Anagrams Leetcode Solution Python ->
class Solution(object):
def groupAnagrams(self, strs):
hashmap = {}
for st in strs:
key = ''.join(sorted(st))
if key not in hashmap:
hashmap[key] = [st]
else:
hashmap[key] += [st]
return hashmap.values()
Code language: Python (python)