区域和检索

此博客链接:https://www.cnblogs.com/ping2yingshi/p/13739180.html

区域和检索

题目链接:https://leetcode-cn.com/problems/range-sum-query-immutable/submissions/

给定一个整数数组  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

题解:

     思路:题目说可以把数组看成一个固定值,所以把数组当成固定值,在构造方法中,接收数组,在求和方法中,对数组中的区间求和。

     代码:

class NumArray {
    int[] nums;
    public NumArray(int[] nums) {
        this.nums= nums;   
    }
    
    public int sumRange(int i, int j) {
        int sum=0;
       while(i<=j)
       {
         sum=sum+nums[i];
         i++;
       }
       return sum;
    }
}

不过这个方案提交后,内存和耗时都挺高的。主要为还没有用到动态规划做啊。

原文地址:https://www.cnblogs.com/ping2yingshi/p/13739180.html