Suffix Trees and their Applications in String Algorithms by Roberto Grossi and Giuseppe F. Italiano.
The suffix tree is a compacted trie that stores all suffixes of a given text string. This data structure has been intensively employed in pattern matching on strings and trees, with a wide range of applications, such as molecular biology, data processing, text editing, term rewriting, interpreter design, information retrieval, abstract data types and many others.
In this paper, we survey some applications of suffix trees and some algorithmic techniques for their construction. Special emphasis is given to the most recent developments in this area, such as parallel algorithms for suffix tree construction and generalizations of suffix trees to higher dimensions, which are important in multidimensional pattern matching.
The authors point out that “suffix tree” is only one of the names for this subject:
The importance of the suffix tree is underlined by the fact that it has been rediscovered many times in the scientific literature, disguised under different names, and that it has been studied under numerous variations. Just to mention a few appearances of the suffix tree, we cite the compacted bi-tree , the prefix tree , the PAT tree , the position tree [3, 65, 75], the repetition finder , and the subword tree [8, 24]….
Which is an advantage if you are researching another survey paper and tracing every thread on suffix trees by whatever name, not so much of an advantage if you miss this paper or an application under name other than “suffix tree.”
Of course, a search with:
“suffix tree” OR “impacted by-tree” OR “prefix tree” OR “PAT tree” OR “position tree” OR “repetition finder” OR “subword tree”
that returns About 1,830,000 results (0.22 seconds), isn’t very helpful.
In part because no one is going to examine 1,830,000 results and that is a subset of all the terms for suffix trees.
I think we can do better than that and without an unreasonable expenditure of resources. (See: Less Than Universal & Uniform Indexing)