您的位置:首页 > 产品设计 > UI/UE

Leetcode 303 Range Sum Query - Immutable

2016-05-06 11:09 459 查看
题意:查询一个数组在(i,j]范围内的元素的和。

思路非常简单,做个预处理,打个表就好

拓展:可以使用树状数组来完成该统计,算法复杂度为(logn),该数据结构强力的地方是实现简单,而且能完成实时更新以及上面的统计和

class NumArray {
public:
vector<int> sum;
NumArray(vector<int> &nums) {
sum.push_back(0);
for(vector<int>::size_type i = 0; i< nums.size(); ++i){
int m = sum[i] + nums[i];
sum.push_back(m);
}
}

int sumRange(int i, int j) {
return sum[j + 1] - sum[i];
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: