- Using the the Longest Common Subsequence algorithm on a sequence with its sorted self:
O(n^2)
- Using a dynamic programming algorithm described here . It is also
O(n^2)
, but faster than (1) because of better constants and less generality. - Using a greedy algorithm described here, that runs in
O(n*log(n))
Longest Increasing Subsequence
For comments, please send me an email.