【LeetCode-303】Range Sum Query - Immutable

来源:互联网 发布:二战苏联远东部队知乎 编辑:程序博客网 时间:2024/06/06 04:38

Given an integer array nums, find the sum of the elements between indices i and j (i ≤ j), inclusive

给定一个数组nums,求出索引i和j之间元素的和,i一定是小于或等于j的(包含i和j)

Example:

Given nums = [-2, 0, 3, -5, 2, -1]sumRange(0, 2) -> 1sumRange(2, 5) -> -1sumRange(0, 5) -> -3
package leetcode;public class RangeSumQueryImmutable {public int[] sum;public void NumArray(int[] nums) {if(nums == null || nums.length == 0){sum = null;}else{sum = new int[nums.length];sum[0] = nums[0];for(int i = 1;i < nums.length;i ++){sum[i] = sum[i - 1] + nums[i];}}    }    public int sumRange(int i, int j) {    if(sum == null || j >= sum.length){    return 0;    }    if(i == 0){    return sum[j];    }    else{    return sum[j] - sum[i - 1];    }    }}


0 0
原创粉丝点击