27 lines
705 B
Plaintext
27 lines
705 B
Plaintext
import java.util.Map;
|
|
|
|
void setup() {
|
|
String[] words = loadStrings("http://wiki.puzzlers.org/pub/wordlists/unixdict.txt");
|
|
topAnagrams(words);
|
|
}
|
|
|
|
void topAnagrams (String[] words){
|
|
HashMap<String, StringList> anagrams = new HashMap<String, StringList>();
|
|
int maxcount = 0;
|
|
for (String word : words) {
|
|
char[] chars = word.toCharArray();
|
|
chars = sort(chars);
|
|
String key = new String(chars);
|
|
if (!anagrams.containsKey(key)) {
|
|
anagrams.put(key, new StringList());
|
|
}
|
|
anagrams.get(key).append(word);
|
|
maxcount = max(maxcount, anagrams.get(key).size());
|
|
}
|
|
for (StringList ana : anagrams.values()) {
|
|
if (ana.size() >= maxcount) {
|
|
println(ana);
|
|
}
|
|
}
|
|
}
|