Issue No. 04 - August (1996 vol. 8)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/69.536247
<p><b>Abstract</b>—Tries offer text searches with costs which are independent of the size of the document being searched, and so are important for large documents requiring spelling checkers, case insensitivity, and limited approximate regular secondary storage. Approximate searches, in which the search pattern differs from the document by <it>k</it> substitutions, transpositions, insertions or deletions, have hitherto been carried out only at costs linear in the size of the document. We present a trie-based method whose cost is independent of document size. Our experiments show that this new method significantly outperforms the nearest competitor for <it>k</it> = 0 and <it>k</it> = 1, which are arguably the most important cases. The linear cost (in <it>k</it>) of the other methods begins to catch up, for our small files, only at <it>k</it> = 2. For larger files, complexity arguments indicate that tries will outperform the linear methods for larger values of <it>k</it>. Trie indexes combine suffixes and so are compact in storage. When the text itself does not need to be stored, as in a spelling checker, we even obtain negative overhead: 50% compression. We discuss a variety of applications and extensions, including best match (for spelling checkers), case insensitivity, and limited approximate regular expression matching.</p>
Approximate matching, text search, trie.
H. Shang and T. Merrettal, "Tries for Approximate String Matching," in IEEE Transactions on Knowledge & Data Engineering, vol. 8, no. , pp. 540-547, 1996.