Fast computation of a longest increasing subsequence and application

Maxime Crochemore, Ely Porat

Research output: Contribution to journalArticlepeer-review

42 Scopus citations

Abstract

We consider the complexity of computing a longest increasing subsequence (LIS) parameterised by the length of the output. Namely, we show that the maximal length k of an increasing subsequence of a permutation of the set of integers {1,2,...,n} can be computed in time O(nloglogk) in the RAM model, improving the previous 30-year bound of O(nlogk). The algorithm also improves on the previous O(nloglogn) bound. The optimality of the new bound is an open question. Reducing the computation of a longest common subsequence (LCS) between two strings to an LIS computation leads to a simple O(rloglogk)-time algorithm for two sequences having r pairs of matching symbols and an LCS of length k.

Original languageEnglish
Pages (from-to)1054-1059
Number of pages6
JournalInformation and Computation
Volume208
Issue number9
DOIs
StatePublished - Sep 2010

Bibliographical note

Funding Information:
< Work partially supported by the Royal Society, UK. A preliminary version of the article has been presented at the conference “Visions of Computer Science”,

Funding

< Work partially supported by the Royal Society, UK. A preliminary version of the article has been presented at the conference “Visions of Computer Science”,

FundersFunder number
Royal Society

    Keywords

    • Data structures
    • Design and analysis of algorithms
    • Dynamic programming
    • Longest common subsequence
    • Longest increasing subsequence
    • Priority queue

    Fingerprint

    Dive into the research topics of 'Fast computation of a longest increasing subsequence and application'. Together they form a unique fingerprint.

    Cite this