发布于 2013-08-15 18:56:54
3楼
这个可分两种情况:
1、采集200个数据做一次平均;
2、每采集一个数据,和前面采集的199个历史数据平均。
第1种平均,算法相对简单:准备三个变量,累加值(长整数)、最小值、最大值;采第一个值时,累加值=最小值=最大值=第一个采样值,后续的199个采样值,加到累加变量中,同时与最小值、最大值比较,更新这两个极值;采满200个,累加值减去两个极值后计算平均。
第2种,可算是递推法平均,必须准备200个采样值的队列,每采一个值,加入队列中,队列满时,最旧的数据丢弃,然后从队列中找出两个极值,计算总和,减去极值,计算平均。