差分数组解决区间增量
差分数组对应的概念是前缀和数组,对于数组 [1,4,5,7],其差分数组为 [1,3,1,2],差分数组的第 i 个数即为原数组的第 i-1 个元素和第 i 个元素的差值,也就是说我们对差分数组求前缀和即可得到原数组。
差分数组的性质是,当我们希望对原数组的某一个区间 [l,r] 施加一个增量num 时,差分数组 d 对应的改变是:d[l] 增加 num,d[r+1] 减少num,这样我们在使用前缀和来还原数组时区间[l,r]的增量就都是num了,需要注意的就只有r+1>len-1的边界情况了,小心数组越界即可。这样对于区间的修改就变为了对于两个位置的修改。并且这种修改是可以叠加的,即当我们多次对原数组的不同区间施加不同的增量,我们只要按规则修改差分数组即可。