The order in which the groups and members of the groups are printed does not matter.
inputStr = {"eat","tea","tan","ate","nat","bat"}
Here {“tea”, “ate”,” eat”} and {“nat”, “tan”} are grouped as anagrams. Since there is no such string in “inputStr” which can be an anagram of “bat”, thus, “bat” will be the only member in its group.
The first line contains an integer 'T', which denotes the number of test cases or queries to be run. Then the test cases follow.
The first line of each test case contains an integer 'N' which denotes the number of strings.
The next line contains 'N' single space-separated strings. The strings consist of lower case English alphabets only.
For each test case/query, print the anagrams belonging to the same group in a single line, where all the anagrams are separated by a single space, and each group will be printed in a separate line.
The output for every test case will be printed in a separate line.
You don't have to print anything. It has already been taken care of. Just implement the function.
1<= T <= 50
1<= N <= 100
1<= K <= 10
Where 'T' is the number of test cases, 'N' is the length of the given array/list of strings and ‘K’ is the maximum length of a string in the given array/list.
Time limit: 1 sec.