K-best suffix arrays

  • Authors:
  • Kenneth Church;Bo Thiesson;Robert Ragno

  • Affiliations:
  • Microsoft, One Microsoft Way, Redmond, WA;Microsoft, One Microsoft Way, Redmond, WA;Microsoft, One Microsoft Way, Redmond, WA

  • Venue:
  • NAACL-Short '07 Human Language Technologies 2007: The Conference of the North American Chapter of the Association for Computational Linguistics; Companion Volume, Short Papers
  • Year:
  • 2007

Quantified Score

Hi-index 0.01

Visualization

Abstract

Suppose we have a large dictionary of strings. Each entry starts with a figure of merit (popularity). We wish to find the k-best matches for a substring, s, in a dictinoary, dict. That is, grep s dict | sort -n | head -k, but we would like to do this in sublinear time. Example applications: (1) web queries with popularities, (2) products with prices and (3) ads with click through rates. This paper proposes a novel index, k-best suffix arrays, based on ideas borrowed from suffix arrays and kdtrees. A standard suffix array sorts the suffixes by a single order (lexicographic) whereas k-best suffix arrays are sorted by two orders (lexicographic and popularity). Lookup time is between log N and sqrt N.