Suffix Tree
In computer science, a suffix tree (also called suffix trie, PAT tree or, in an earlier form, position tree) is a data structure that presents the suffixes of a given string in a way that allows for a particularly fast implementation of many important string operations.
Video on Suffix Tree

Google video on constructing a suffix tree

/livcos.org/data/map/brainstorm/DataSearch