那么差分数组是什么呢?其实差分数组本质上也是一个数组,我们暂且定义差分数组为d,差分数组d的大小和原来arr数组大小一样,而且di=arri-arri-1,且di=0,它的含义是什么?就是原来数组i位置上的元素和i-1位置上的元素作差,得到的值就是di的值。所以,例子中的arr数组其对应的差分数组值如下图所示。那么构造...
场景:现在又很大的一组数组,然后让我们从1到100W加1,那么我们如果一个一个做的话o(n)的复杂度对于这个题目背景来说显然很不人道,所以在这里引入了一个人道的数组,array[y] 来记做查分数组,对于数组的每个元素,array[i] = original[i]-original[i-1](特别的当i==0的时候Original[i-1]记做0)那么...
二维差分树状数组 仿照一维树状数组的搭建可搭建二维树状数组,在二维树状数组的基础上再搭建二维差分树状数组。 #include<iostream>#define N 100 using namespace std; int n, m; int a[N][N],c[N][N]; int tree[N][N]; int lowbit(int x) { return x & -x; } void change(int x, int y, ...
其实差分数组本质上也是一个数组,我们暂且定义差分数组为d,差分数组d的大小和原来arr数组大小一样,而且d[i]=arr[i]-arr[i-1](i≠0),且d[i]=0,它的含义是什么?就是原来数组i位置上的元素和i-1位置上的元素作差,得到的值就是d[i]的值。 所以,例子中的arr数组其对应的差分数组值如下图所示。 那么构...