差分数组
1.定义:
差分数组是用来表示数组中相邻两个元素的差值的一组数组
对于已知有n个元素的离线数列d,我们可以建立记录它每项与前一项差值的差分数组f:显然,f[1]=d[1]-0=d[1];对于整数i∈[2,n],我们让f[i]=d[i]-d[i-1]。
如图:
B列的数组是原始数组,D列的数组是针对B的一个差分数组。
2.前缀和的计算:
如图:
B为原始数组,D为差分数组,F为前缀和
由图可知:
F1 = D1
F2 = D1 + D1 + D2
F3 = D1 + D1 + D1 + D2