Loading collection data...
Collections are a way for you to organize kata so that you can create your own training routines. Every collection you create is public and automatically sharable with other warriors. After you have added a few kata to a collection you and others can train on the kata contained within the collection.
Get started now by creating a new collection.
Good point)
I like your solution. I think PriorityQueue fits very well into the purpose of this kata.
I suggest you to improve your solution by removing the nested class.
WordFreq object doesn't buy you anything, you just duplicate the data from map entries.
Add them to the entries to the queue directly instead.