Anagrams: Difference between revisions

Crystal code
(Rename Perl 6 -> Raku, alphabetize, minor clean-up)
(Crystal code)
Line 1,817:
caret trace crate cater carte
</pre>
 
 
=={{header|Crystal}}==
{{trans|Ruby}}
<lang ruby>require "http/client"
 
response = HTTP::Client.get("http://wiki.puzzlers.org/pub/wordlists/unixdict.txt")
 
words : Array(String) = response.body_io.gets_to_end.split
 
anagram = {} of String => Array(String)
 
words.each do |word|
key = word.split("").sort.join
 
if !anagram[key]?
anagram[key] = [word]
else
anagram[key] << word
end
end
 
count = anagram.values.map { |ana| ana.size }.max
anagram.each_value { |ana| puts ana if ana.size >= count }
</lang>
 
{{out}}
<pre>
["abel", "able", "bale", "bela", "elba"]
["alger", "glare", "lager", "large", "regal"]
["angel", "angle", "galen", "glean", "lange"]
["caret", "carte", "cater", "crate", "trace"]
["elan", "lane", "lean", "lena", "neal"]
["evil", "levi", "live", "veil", "vile"]
</pre>
 
 
== {{header|D}} ==
===Short Functional Version===
Anonymous user