前言
上篇文章讲了前缀和前缀和数组,这篇文章开始讲查分数组。另外,数组有下图这些知识点与技巧。
思路
场景:频繁对原始数组的某个区间的元素进⾏增减。原数组nums与差分数组diff如下图所示。
区间加法
解题思路
直接在差分数组上做操作:diff[startIndex] = diff[startIndex] + inc, diff[endIndex + 1] = diff[endIndex + 1] - inc。
这就代表了原数组nums的startIndex到endIndex位置的元素都加上inc。
但当endIndex就是指向nums的最后一个元素时,就无需做diff[endIndex + 1] = diff[endIndex + 1] - inc操作了。