我有一个整数序列 {a1,a2...an} ,我想把它分成最小数量的“增加子序列”。例如:假设序列为 {10,30,20,40},则答案为 2。在这种情况下,第一个递增序列为 {10,30,40},第二个为 {20}。我可以使用 O(N^2) 算法来做到这一点,但我对可以达到目的的 O(N*logN) 解决方案特别感兴趣。
问问题
2463 次
我有一个整数序列 {a1,a2...an} ,我想把它分成最小数量的“增加子序列”。例如:假设序列为 {10,30,20,40},则答案为 2。在这种情况下,第一个递增序列为 {10,30,40},第二个为 {20}。我可以使用 O(N^2) 算法来做到这一点,但我对可以达到目的的 O(N*logN) 解决方案特别感兴趣。