算法问题:如何判断一组数据中某段数据成上升趋势!求大虾
比如 1000 长度的 int 数组;
要求找出 里面 是否存在
某段数据-(要求为连续的30个数据)
成上升趋势!
举几个例子不符合要求的例子(以9个数据位一个段):
1 20 10 9 8 7 6 5 4
1 3 2 1 0 8 9 6 9
符合要求的
1 5 4 3 7 8 6 5 4
1 2 3 4 5 6 7 8 9
------解决方案--------------------这个需求太模糊了,一般性的算法有两种,最长递增子序列 和 逆序数
------解决方案--------------------不知道这样行不行,相邻的两点求斜率,30个点的话一共有29个斜率,当斜率之和大于零,并且正的斜率大于负的斜率的时候认为该区间,呈上升趋势
------解决方案--------------------
最长递增子序列 和 逆序数
求介绍这两种算法
------解决方案--------------------1.定义一个小区间,这个区间里包含有少数点(点数自定,就看你想要哪种程度的上升趋势了);
2.判断这个区间内点数是否成上升趋势
(1)区间内的最后一个点必须大于第一个点;
(2)中间点的波动幅度你得设置一个限制;
3.区间之间判断也可用(1)、(2)来加以判断。
不太懂你的上升趋势是怎么定义的,我能想到的就是这。。