June 2018 Update
This commit is contained in:
parent
ba8067c3b7
commit
22f33d4004
5278 changed files with 84726 additions and 14379 deletions
|
|
@ -1,15 +1,16 @@
|
|||
url = "http://www.puzzlers.org/pub/wordlists/unixdict.txt"
|
||||
|
||||
wordlist = open(readlines, download(url))
|
||||
|
||||
wsort(word) = join(sort(collect(word)))
|
||||
wsort(word::AbstractString) = join(sort(collect(word)))
|
||||
|
||||
function anagram(wordlist)
|
||||
hash = Dict() ; ananum = 0
|
||||
for word in wordlist
|
||||
sorted = wsort(word)
|
||||
hash[sorted] = [ get(hash, sorted, []); word ]
|
||||
ananum = max(length(hash[sorted]), ananum)
|
||||
end
|
||||
collect(values(filter((x,y)-> length(y) == ananum, hash)))
|
||||
function anagram(wordlist::Vector{<:AbstractString})
|
||||
dict = Dict{String, Set{String}}()
|
||||
for word in wordlist
|
||||
sorted = wsort(word)
|
||||
push!(get!(dict, sorted, Set{String}()), word)
|
||||
end
|
||||
wcnt = maximum(length, values(dict))
|
||||
return collect(Iterators.filter((y) -> length(y) == wcnt, values(dict)))
|
||||
end
|
||||
|
||||
println.(anagram(wordlist))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue