Skip to content
/ boggle Public

Multiprocess boggle board solver using a directed acyclic word graph

Notifications You must be signed in to change notification settings

mccajm/boggle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

Solves a boggleboard using words in /usr/share/dict/words. A directed acyclic word graph is generated to represent all words in /usr/share/dict/words. This allows word prefixes to be tested as we iterate through the boggleboard. We can therefore stop if the letters so far are not the prefix for any word.

I used the dawg library as it is implemented in C as dawgdic so I assumed it would be quicker than a native Python solution. I also considered using a trie, but felt that a dawg would be more memory-efficient as there is no repetition.

I used an iterative approach rather than a recursive one as CPython's recursion depth limit is 1000 (although I don't expect to reach that with this dataset) and I also assume that an iterative approach will be better optimised by CPython.

About

Multiprocess boggle board solver using a directed acyclic word graph

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages