设tails是一个数组,用于存储在tails[i]中,所有长度为i+1的递增子序列的最小的尾元素。...4, 5], [5, 6], [4, 6] => tails[1] = 5
# 长度为3
[4, 5, 6] => tails[2] = 6
tails...[i-1] < x <= tails[i],说明x需要替换一下前面那个大于x的数字,以便保证tails是一个递增的序列,那么就更新tails[i]
这样维护一个tails变量,最后的答案就是这个长度...tails = [3, 0, 0, 0, 0]
1. x = 3,此时i = 0,直接令tails[0] = 3,tails = [3, 0, 0, 0, 0]。...3. x = 7,大于tails的末尾,直接令tails[2] = 7,tails = [3, 4, 7, 0, 0]。