[leetcode]差分算法

一.差分算法性质

1.1计算差分数组:

b[i] = a[i] - a[i - 1]

1.2差分数组的性质

1.2.1对差分数组的每一项作前缀和,可以得到原来的数组

ai = ​a1​+∑j=1i−1​dj​

1.2.2将差分数组的某一项加i,那么其后面的所有项都会相对于原数组加i

让2~4项加3

这个第三行的数组是让原数组的2~4的数值加3。

举个例子:

这张图展示的为原数组。

这张图的第一行的数组代表给原数组的第2到4项元素的数值加3。相当于我们在第二行的差分数组的第2项加了3,而我们不希望第五项的值有变化,我们就让第五项的值减3。

1.3一维差分Coding:

二.二维差分算法

2.1二维差分算法的性质

相关推荐
Keep learning!2 分钟前
PCA主成分分析学习
学习·算法
专注VB编程开发20年6 分钟前
CUDA实现随机切割算法,显卡多线程计算
算法·cuda
2301_7887705510 分钟前
OJ模拟4
算法
NAGNIP1 小时前
一文搞懂CNN经典架构-AlexNet!
人工智能·算法
2401_878530212 小时前
自定义内存布局控制
开发语言·c++·算法
专注VB编程开发20年2 小时前
PNG、GIF透明游戏角色人物输出一张图片技巧,宽度高度读取
算法
CoderCodingNo2 小时前
【CSP】CSP-J 2025真题 | 异或和 luogu-P14359 (相当于GESP六级水平)
算法
keep intensify2 小时前
打家劫舍3
算法·深度优先
历程里程碑2 小时前
Protobuf 环境搭建:Windows 与 Linux 系统安装教程
linux·运维·数据结构·windows·线性代数·算法·矩阵
keep intensify2 小时前
岛屿数量--
算法·深度优先