论文的中心内容是:
重要点的判断方式是基于垂直距离最大值,同样和道格拉斯普克算法有一个限定值。
分段过程也是基于第一个找出的点并由此遍历的过程。
具体论文要搜索:基于序列重要点的时间序列分割
给出地址:https://www.docin.com/p-110929153.html
是我理解错了吗?怎么感觉和道格拉斯普克的算法好像....
同样是可以应用与折线图的绘制,在大量点的情况下,绘制较为困难时可以用的算法
截图
关键几个地方
public class SIP { public static double Distance(Point start, Point end, Point x) { double restult = Math.Abs(start.Y + (end.X - start.X) * ((x.X - start.X) / (end.X - start.X)) - x.Y); return restult; } public static void Segment(List<Point> list, int start, int end, double e, ref List<int> ns) { double maxvalue = 0; int index = 0; for (int i = start; i < end; i++) { var val = Distance(list[start], list[end], list[i]); //和DP一样的过程,具体计算不太一样 if (val > maxvalue) { maxvalue = val; index = i; } } if (maxvalue > e && index != 0) { ns.Add(index); //遍历添加 Segment(list, start, index, e, ref ns); Segment(list, index, end, e, ref ns); } } public static List<Point> BSIP(List<Point> list, double e) { List<Point> BSIPList = new List<Point>(); List<int> ns = new List<int>(); //默认添加首点和尾点 BSIPList.Add(list[0]); //遍历分割 Segment(list, 0, list.Count - 1, e, ref ns); ns.Sort(); foreach (var item in ns) { BSIPList.Add(list[item]); } //默认添加首点和尾点 BSIPList.Add(list.Last()); return BSIPList; } }
具体代码我就不给了,我把程序打包传到博客园,下载就是了
地址
原文转载:http://www.shaoqun.com/a/664724.html
csa:https://www.ikjzd.com/w/904
声网agora:https://www.ikjzd.com/w/2176
论文的中心内容是:重要点的判断方式是基于垂直距离最大值,同样和道格拉斯普克算法有一个限定值。分段过程也是基于第一个找出的点并由此遍历的过程。具体论文要搜索:基于序列重要点的时间序列分割给出地址:https://www.docin.com/p-110929153.html是我理解错了吗?怎么感觉和道格拉斯普克的算法好像....同样是可以应用与折线图的绘制,在大量点的情况下,绘制较为困难时可以用的算法
母婴团购网:https://www.ikjzd.com/w/716
anker:https://www.ikjzd.com/w/1027
vincent:https://www.ikjzd.com/w/1642
你忽视的版权登记,已成为亚马逊投诉高发地!:https://www.ikjzd.com/home/12498
按摩师帮我按摩到极致舒服 口述那一次按摩全身得到了放松:http://www.30bags.com/a/250357.html
没做成"爆款"的你每天都在干什么?(老板必看):https://www.ikjzd.com/home/21860
没有评论:
发表评论