题目:一个整数序列,如果两个相邻元素的差恰好正负(负正)交替出现,则该序列呗成为摇摆序列,一个小于2个元素的序列直接为摇摆序列,给一个随机序列,求这个序列满足摇摆序列定义的最长子序列的长度。
例如:
序列[1,7,4,9,2,5],相邻元素的差(6,-3,5,-7,3),该序列为摇摆序列
序列[1,4,7,2,5]相差(3,3,-5,3)不是摇摆序列
这道题问题用个折线图就可以看的很明白,一次上下转折的两个端点就是序列中的点
除了黑色的点其他都是子序列里面的点,一次状态里面的两个端点就是序列中的点,用java通过状态的改变就很简单
代码地址:
OscillatingSubsequence.java