[LeetCode] Range Sum Query

来源:互联网 发布:陕西省定额抹灰算法 编辑:程序博客网 时间:2024/05/16 01:51

声明:原题目转载自LeetCode,解答部分为原创

Problem :

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

    Example:

Given nums = [-2, 0, 3, -5, 2, -1]sumRange(0, 2) -> 1sumRange(2, 5) -> -1sumRange(0, 5) -> -3

    Note:

  1. You may assume that the array does not change.
  2. There are many calls to sumRange function.
Solution:
    思路:纯属练手,代码如下:
class NumArray {public:    NumArray(vector<int> nums) {        add.push_back(0);        for(int i = 0; i < nums.size(); i ++)        {            add.push_back(add[i] + nums[i]);        }    }        int sumRange(int i, int j) {        return add[j + 1] - add[i];    }    private:    vector<int> add;};/** * Your NumArray object will be instantiated and called as such: * NumArray obj = new NumArray(nums); * int param_1 = obj.sumRange(i,j); */



原创粉丝点击