A compressed trie has nodes including multiple character sub-strings. Such
multiple character storage reduces the number of nodes in the trie,
thereby reducing the amount of memory required for storing the trie and
reducing the amount of time required to perform matching. Furthermore, in
such a compressed trie, sub-strings are stored in a single character
string. Each node references its corresponding sub-string by the
sub-string's starting position and length in the character string.
Multiple nodes may reference a single sub-string. Thus, referencing
rather than storing sub-strings in corresponding nodes eliminates
repetitive sub-string storage, thereby reducing the amount of memory
required for storing the trie.