[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二维差分算法的性质

相关推荐
kebijuelun几秒前
ERNIE 5.0:统一自回归多模态与弹性训练
人工智能·算法·语言模型·transformer
历程里程碑18 分钟前
普通数组----最大子数组和
大数据·算法·elasticsearch·搜索引擎·排序算法·哈希算法·散列表
52Hz11844 分钟前
力扣230.二叉搜索树中第k小的元素、199.二叉树的右视图、114.二叉树展开为链表
python·算法·leetcode
苦藤新鸡1 小时前
56.组合总数
数据结构·算法·leetcode
LiLiYuan.1 小时前
【Cursor 中找不到LeetCode 插件解决办法】
算法·leetcode·职场和发展
Charlie_lll1 小时前
力扣解题-[3379]转换数组
数据结构·后端·算法·leetcode
captain3761 小时前
Java队列(Queue)
算法·链表
TracyCoder1231 小时前
LeetCode Hot100(23/100)——142. 环形链表 II
算法·leetcode·链表
jigsaw_zyx1 小时前
提示词工程
人工智能·算法