# 前缀和

给定一个数组集合,前n个元素的总和可构成一个新的数据集合,这个集合就可称为前缀和;

例如:给定一个一维数组 nums,则可遍历求出前缀和数组 preSums,两者关系可表示为:

preSums[0] = nums[0]
preSums[1] = nums[0]+nums[1]
preSums[2] = nums[0]+nums[1]+nums[2]
...
preSums[n] = nums[0]+nums[1]+nums[2]+...+nums[n]
1
2
3
4
5

# 二维前缀和

二维前缀和实际上就是一个矩阵内值的和,而矩阵又可以由两个行数或列数少一的子矩阵组合后,删去重合部分再加上右下角的值来构成,也就是以下式子:

[公式]

# 用途

前缀和是一种预处理,用于降低查询时的时间复杂度。

# 例题

和为s的连续正数序列 | BINGO BLOG (bingoyb.github.io) (opens new window)

更新时间: 5/5/2023, 11:19:52 AM