数组区间和
303. Range Sum Query - Immutable (Easy)
Given nums = [-2, 0, 3, -5, 2, -1]
sumRange(0, 2) -> 1
sumRange(2, 5) -> -1
sumRange(0, 5) -> -3
题目描述:
给定一个数组,求区间i-j的和。可以转换为求sum[j+1]-sum[i],其中sum[i]为(0,i-1)的和。
思路分析:
可以转换为求sum[j+1]-sum[i],其中sum[i]为(0,i-1)的和。
代码:
public int[]dp;
public NumArray(int[]nums){
dp=new int [nums.length+1];
for(int i=1;i<=nums.length;i++){
dp[i]=dp[i-1]+nums[i-1];
}
}
public int sumRange(int i,int j){
return dp[j+1]-dp[i];
}