Fast computation of a longest increasing subsequence and application

Maxime Crochemore, Ely Porat

Research output: Contribution to journalArticlepeer-review

36 Scopus citations


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
Issue number9
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”,


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


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

Cite this