- 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.