The Boggle program solves the classic Boggle board, printing out all words that makeable via the board followed by the number of times that word was found. The dictionary of all searchable words is passed in via stdin.
The usage is as follows:
Boggle [-c] [-t] nRows nCols board
where using the -c flag prints out all words in the dictionary that are not found in the board and using -t enables the program to use the same letters multiple times.
The program uses a depth-first graph search algorithm to walk the board and a trie to store words from the dictionary. It then uses a queue to print all words to the terminal in alphabetical order.