该代码与之前的代码(数据压缩V1)相比,主要有以下两个区别:
- 在
history
数组中,保存了最近两个输入值。 - 在选择输出值时,使用了两次输入值的斜率差值来衡量差异。
算法逻辑如下:
初始化:
- 设置
count
为 0,用于记录输出元素的数量。- 设置
n
为 0,用于记录当前历史值的索引。- 初始化
history
数组,用于存储最近的两个输入值。- 设置
last[0]
为 0,表示上一次输出的值。- 设置
last[1]
为 0,表示上一次输出值的前一个值。遍历输入数据:
- 依次读取每个输入值
inValues[i]
。- 将输入值存储到
history
数组中,并更新n
的值。- 如果
n
不为 0,则跳过下一次迭代,因为还没有收集到足够的历史值。- 如果
n
&n