Radix Autocompletion

Description:

This program originally started as custom Radix Tree implementation for my Data Structures final project, but I realized it would be incredibly simple to do more with it.

The Radix Tree stores Strings in a tree, where each node is a character. Each character node points to another character node, and the last character in the string is flagged.

This Autocompletion program works by storing an entire dicitonary in one Radix Tree. If you pick any node in the tree, you can get all the possible words by simply tracing the rest of the pointers.

Because the complexity of String search is a linear relationship with the length of the String, and there's a finite amount of autocompletions, this program runs in O(k) time.