数组区间和

安稳与你 提交于 2020-03-09 08:26:48

给定一个整数数组  nums,求出数组从索引 i 到 j  (i ≤ j) 范围内元素的总和,包含 i,  j 两点。

示例:

给定 nums = [-2, 0, 3, -5, 2, -1],求和函数为 sumRange()

sumRange(0, 2) -> 1
sumRange(2, 5) -> -1
sumRange(0, 5) -> -3
说明:

你可以假设数组不可变。
会多次调用 sumRange 方法

 1 public class T303 {
 2     private int[] sum;
 3     public T303(int[] nums) {
 4         sum = new int[nums.length + 1];
 5         for (int i = 0; i < nums.length; i++) {
 6             sum[i] = sum[i - 1] + nums[i];
 7         }
 8     }
 9 
10     public int sumRange(int i, int j) {
11         return sum[j + 1] - sum[i];
12     }
13 }

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!