Estimating the longest increasing sequence in polylogarithmic time
Abstract
Finding the length of the longest increasing subsequence (LIS) is a classic algorithmic problem. Let n denote the size of the array. Simple O(n n) algorithms are known for this problem. We develop a polylogarithmic time randomized algorithm that for any constant δ > 0, estimates the length of the LIS of an array to within an additive error of δ n. More precisely, the running time of the algorithm is ( n)c (1/δ)O(1/δ) where the exponent c is independent of δ. Previously, the best known polylogarithmic time algorithms could only achieve an additive n/2 approximation. With a suitable choice of parameters, our algorithm also gives, for any fixed τ>0, a multiplicative (1+τ)-approximation to the distance to monotonicity f (the fraction of entries not in the LIS), whose running time is polynomial in (n) and 1/varepsilonf. The best previously known algorithm could only guarantee an approximation within a factor (arbitrarily close to) 2.
Turn this paper into a lesson
ArcXiv compiles a structured reading guide from this paper's metadata: plain-English importance, contributions, prerequisite concepts, which sections to read first, flashcards, and a quiz. Grounded in the abstract, never invented.