今天做leetcode 1109. 航班预订统计 算法题时发现解题可用差分数组,一番查询了解后对其进行简单的总结,希望以后能够合理运用
差分数组即数组内每一项值减去前一项值的差值所得到的一个数组
比如数组[2,4,3,6,8]所对应的差分数组为[0,2,-1,3,2]
令b[i]=a[i+1]-a[i],一次遍历(for循环)就可以求得
差分数组作为一个辅助数组使用,一般用于数组内区间元素加或减相同数值的情况
当给原数组区间[n,m]中所有元素加上3时,差分数组的n项将加3(c[n]+=3)和m+1项将减3(c[m+1]-=3)
即原数组[n,m]区间加num
差分数组c中,c