以下内容是我在力扣上的一些提交记录,如果有不对的地方,还请指正~
前缀和技巧适用于快速计算一个索引区间内的元素之和。
力扣相关题目:
- 303、区域和检索-数组不可变
- 560、 和为 K 的子数组
- 304、 二维区域和检索 - 矩阵不可变
303、区域和检索-数组不可变
题目描述:
我的提交
需要注意的是,初始化数组需要在numarray外面,因为sumrange方法也是需要使用到这个数组的。
class NumArray {
public:
vector<int> sum;
NumArray(vector<int>& nums) {
int n = nums.size();
sum.resize(n+1);
sum[0] = 0;
for(int i=0; i<n; i++)
sum[i+1] = sum[i] + nums[i];
}
int sumRange(int left, int right) {
return sum[right+1] - sum[left];
}
};
/**
* Your NumArray object will be instantiated and called